Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

regicosta

Paginação de um campo de um resgistro

Recommended Posts

Oi! Tudo bem.Sou iniciante em ASP, na verdade sei muito pouco, o que faço muito é pegar scrips prontos, neste s sites especializados e alterá-los, isto eu faço muito bem. No entato estou com um problema.Adaptei um script de noticia, baixado na net as minhas necessidades, porem estou com um problema.Quando posto uma noticia muito grande queria dividí-la em páginas.Exemplo.O meu banco de dados contém os seguintes campos:id, data, titulo, descrição, noticia e autor.na página index.aspGera uma página dinamica com:<%= data%> - <%= titulo><%= descricao>E um link para abrir a pagina com a noticia identificada pelo id<a href='noticia.asp?id=<%= id>A página noticia.asp abre beleza com o seguinte<%=data%> - <%= titulo><%= noticia%>O meu problema é o seguinte, quando posto uma noticia muito grande a página noticia.asp fica enorme. Eu queria divídi-la em mais páginas, por enxemplo quando a pagina noticia.asp chegar ao limite de 20 linhasgerar o seguinte código:Continue pagina 1 - 2 - 3 - 4 E aí tem como???Eu queria

Compartilhar este post


Link para o post
Compartilhar em outros sites

tah aih oh, eu fiz de cabeca, nao testei, mais eu acho que nao deve dar muitos problemas nao.....

 

 

dim strNoticia, i, totalPaginasdim linha, linhas, offSetdim paginaAtualpaginaAtual = 1 '' coloquei pra testes, depois você faz os esquemas dos links e tudo maisstrNoticia = noticialinhas = Split(strNoticia, vbCrLf) '' divide o texto da noticia quebrando as linhasoffSet = 20 - (paginaAtual*20)If offSet + 20 > UBound(linhas)  Then offSet = UBound(linhas)For i = offSet To offSet + 20      linha = linhas(i)      Response.Write linhaNexttotalPaginas = Int(UBound(linhas) / 20)For i = 1 To totalPaginasResponse.Write "<a href='noticias.asp?pagina='" & i & "'>" & i & "</a>"Next[CODE]

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sou iniciante em ASP, na verdade sei muito pouco

Aqui vai um script bem fácil e funcionalvou comentar pra você...

<%Option Explicit 'Primeiro crie uma conexao com o bancodim conexao, sql,registrossub abre_conexaoset conexao = Server.CreateObject("ADODB.Connection")set registros = Server.CreateObject("ADODB.Recordset")conexao.open "driver={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("../database/banco.mdb")end subsub fecha_conexaoconexao.closeset conexao=nothingend sub'---------------Dim produtos 'recordset do produtoDim sSQL, total, totalregistros, paginaatua, totalpaginas, pular, contador, tamanhoDim resto 'resto da divisão'contar o número de registrocall abre_conexaosSQL="Select Count(*) as Total from produtos"set total=conexao.Execute(sSQL)totalregistros=total("total")total.closeset total=nothing'define qts registros por paginatamanho=4'define o total de pagresto=totalregistros mod tamanhoif resto=0 thentotalpaginas=totalregistros/tamanhoelsetotalpaginas=int(totalregistros/tamanho)+1end if'define a pagina atuapaginaatua=1if request.QueryString<>Empty thenpaginaatua=Request.QueryString("pagina")end ifpaginaatua=int(paginaatua)'qts registros a ignorarpular=(paginaatua-1)*tamanho%><h3> Exemplo de Paginação</h3>Página <%=paginaatua%> de <%=totalpaginas%><p><%'ABRE A TABELA DE PRODUTOSsSQL="Select * from produtos" set produtos=conexao.execute(sSQL)'PERCORRE OS REGISTROSfor contador=1 to pularprodutos.movenextnext'mostra os produtos da pagina atialfor contador=1 to tamanhoif not produtos.Eof thenresponse.write produtos("nome")response.write "<br>"produtos.movenextend ifnextprodutos.closeset produtos=nothing%><%call fecha_conexao%><p><%for contador=1 to totalpaginas%><a href="?pagina=<%=contador%>"><%=contador%> </a> <%next%>'-------------------//

Espero ter ajudado
Sim, mais pelo o que eu entendi, ele quer paginar UM Regitros, nao paginar OS Registros

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sou iniciante em ASP, na verdade sei muito pouco

Aqui vai um script bem fácil e funcionalvou comentar pra você...

<%Option Explicit 'Primeiro crie uma conexao com o bancodim conexao, sql,registrossub abre_conexaoset conexao = Server.CreateObject("ADODB.Connection")set registros = Server.CreateObject("ADODB.Recordset")conexao.open "driver={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("../database/banco.mdb")end subsub fecha_conexaoconexao.closeset conexao=nothingend sub'---------------Dim produtos 'recordset do produtoDim sSQL, total, totalregistros, paginaatua, totalpaginas, pular, contador, tamanhoDim resto 'resto da divisão'contar o número de registrocall abre_conexaosSQL="Select Count(*) as Total from produtos"set total=conexao.Execute(sSQL)totalregistros=total("total")total.closeset total=nothing'define qts registros por paginatamanho=4'define o total de pagresto=totalregistros mod tamanhoif resto=0 thentotalpaginas=totalregistros/tamanhoelsetotalpaginas=int(totalregistros/tamanho)+1end if'define a pagina atuapaginaatua=1if request.QueryString<>Empty thenpaginaatua=Request.QueryString("pagina")end ifpaginaatua=int(paginaatua)'qts registros a ignorarpular=(paginaatua-1)*tamanho%><h3> Exemplo de Paginação</h3>Página <%=paginaatua%> de <%=totalpaginas%><p><%'ABRE A TABELA DE PRODUTOSsSQL="Select * from produtos" set produtos=conexao.execute(sSQL)'PERCORRE OS REGISTROSfor contador=1 to pularprodutos.movenextnext'mostra os produtos da pagina atialfor contador=1 to tamanhoif not produtos.Eof thenresponse.write produtos("nome")response.write "<br>"produtos.movenextend ifnextprodutos.closeset produtos=nothing%><%call fecha_conexao%><p><%for contador=1 to totalpaginas%><a href="?pagina=<%=contador%>"><%=contador%> </a> <%next%>'-------------------//

Espero ter ajudado
Sim, mais pelo o que eu entendi, ele quer paginar UM Regitros, nao paginar OS Registros
Mais ets indo pelo caminho correto

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sou iniciante em ASP, na verdade sei muito pouco

Aqui vai um script bem fácil e funcionalvou comentar pra você...

<%Option Explicit 'Primeiro crie uma conexao com o bancodim conexao, sql,registrossub abre_conexaoset conexao = Server.CreateObject("ADODB.Connection")set registros = Server.CreateObject("ADODB.Recordset")conexao.open "driver={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("../database/banco.mdb")end subsub fecha_conexaoconexao.closeset conexao=nothingend sub'---------------Dim produtos 'recordset do produtoDim sSQL, total, totalregistros, paginaatua, totalpaginas, pular, contador, tamanhoDim resto 'resto da divisão'contar o número de registrocall abre_conexaosSQL="Select Count(*) as Total from produtos"set total=conexao.Execute(sSQL)totalregistros=total("total")total.closeset total=nothing'define qts registros por paginatamanho=4'define o total de pagresto=totalregistros mod tamanhoif resto=0 thentotalpaginas=totalregistros/tamanhoelsetotalpaginas=int(totalregistros/tamanho)+1end if'define a pagina atuapaginaatua=1if request.QueryString<>Empty thenpaginaatua=Request.QueryString("pagina")end ifpaginaatua=int(paginaatua)'qts registros a ignorarpular=(paginaatua-1)*tamanho%><h3> Exemplo de Paginação</h3>Página <%=paginaatua%> de <%=totalpaginas%><p><%'ABRE A TABELA DE PRODUTOSsSQL="Select * from produtos" set produtos=conexao.execute(sSQL)'PERCORRE OS REGISTROSfor contador=1 to pularprodutos.movenextnext'mostra os produtos da pagina atialfor contador=1 to tamanhoif not produtos.Eof thenresponse.write produtos("nome")response.write "<br>"produtos.movenextend ifnextprodutos.closeset produtos=nothing%><%call fecha_conexao%><p><%for contador=1 to totalpaginas%><a href="?pagina=<%=contador%>"><%=contador%> </a> <%next%>'-------------------//

Espero ter ajudado
Sim, mais pelo o que eu entendi, ele quer paginar UM Regitros, nao paginar OS Registros
Mais ets indo pelo caminho correto
:rolleyes:

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.