Ir para conteúdo

POWERED BY:

Arquivado

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

rogarfil

[Resolvido] Paginação

Recommended Posts

Tenho o código abaixo, que adaptei o código de "Paginação De Outra Forma Usando Mysql Código Ted k' com adaptações de layout de Vinícius Siller", encontrado aqui no iMasters.

 

<!--#include file="conexao.asp"-->
<%
Dim PagNav, TotalPag
Dim Anterior, Proximo, PagAtual, PaginaVisita, MontaLink, cor, pageSize
Set objSqlRs = Server.CreateObject("ADODB.RecordSet")

objSqlCon.CursorLocation = 3

'quantidade de registros por página
yScroll = Cint(Request("scrY")) - 172

QtdLinGrid = Int((yScroll-42) / 20) - 1 '+ 10
'fim quantidade de registros por página

strQ = "SELECT * FROM RJ_Tabela WHERE Status='C' And UfRes='RJ' And
MunicipioRes='Rio de Janeiro' Order By Nome Limit 100," & QtdLinGrid
Set objSqlRs = objSqlCon.Execute(strQ)

If objSqlRs.EOF Then
Response.Write("Não há registros")
Else
PagNav = CInt(Request.QueryString("pagina"))
If PagNav = 0 Then : PagNav = 1 : End If

objSqlRs.AbsolutePage = PagNav
TotalPag = objSqlRs.PageCount
%>

 

Por padrão ele mostrar (e tem que mostrar) 17 registros por página, e no entanto com a adaptação que fiz ele

está mostrando somente 10 registros.

 

Por favor alguem pode me ajudar, estou em aprendizado com o ASP a apenas 15 dias, e a pessoa que me pediu isto já está chateada por eu não ter resolvido.

 

Agradeço desde já a atenção dispensada,

 

Rogarfil

Compartilhar este post


Link para o post
Compartilhar em outros sites

poste o código completo, pois provavelmente, tem uma variavel que você limita o numero de registros a serem exibidos.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aqui está o Código Completo, e é para aparecer 17 registro por páginas (desculpe não ter sido claro anteriormente qto a quantidade de registros por páginas).

<% @LANGUAGE = VBScript %>
<%
Option Explicit
Response.Expires = 0
Session.LCID = 1046 %>
<!--#include file="conexao.asp"-->
<%
Dim tVal(20), tDescr(20), i, q, Sel, Func, QtdFornec, wWhere, Lin, wSelGrupo

Dim yScroll, QtdLinGrid, QtdRegs, DeReg, TotPag, Pagina

'início variáveis rogarfil
Dim PagNav, TotalPag
Dim Anterior, Proximo, PagAtual, PaginaVisita, MontaLink, cor, PageCount
Set objSqlRs = Server.CreateObject("ADODB.RecordSet")
'fim variáveis rogarfil

objSqlCon.CursorLocation = 3

yScroll = Cint(Request("scrY")) - 172

QtdLinGrid = Int((yScroll-42) / 20) - 1 '+ 10

strQ = "SELECT * FROM RJ_Tabela WHERE Status='C' And UfRes='RJ' And MunicipioRes='Rio de Janeiro' Order By Nome Limit 100," & QtdLinGrid
Set objSqlRs = objSqlCon.Execute(strQ)

If objSqlRs.EOF Then
Response.Write("Não há registros")
Else
PagNav = CInt(Request.QueryString("pagina"))
If PagNav = 0 Then : PagNav = 1 : End If

objSqlRs.AbsolutePage = PagNav
TotalPag = objSqlRs.PageCount

wSelGrupo = Request("g")
Sel = Request("s")
Sel = "V"
i = 0: Lin = 0

%>

<table width="100%"  bordercolor="#aabbd7" border="1" cellpadding="2" cellspacing="0">
 <tr>
   <td style="height:30px; font-size:16px; text-align:center; background-color:#143363; color: #F2FFFF"><%=ChChar("CADASTRO DOS MANOS")%></td>
 </tr>
</table>
<table width="100%">
 <tr>
   <td style="height:30px;font-size:13px">
     UF:
     <select style="font-size:12px" name="SelBeneUF" id="SelBeneUF">
      <option value="SP" selected="selected">RJ</option>
     </select>
     CIDADE:
     <select style="font-size:12px" name="SelBeneCid" id="SelBeneCid">
      <option value="" selected="selected"><%=ChChar(Ucase("Todas"))%></option>
      <option value="SP" selected="selected"><%=ChChar(Ucase("RIO DE JANEIRO"))%></option>
     </select>
      PESQUISA:
      <input name="PesqFornec" type="text" id="PesqFornec" size="25" maxlength="60" />
      <input onClick="Fornec()" class="bt12" type="button" value="OK" />
  </td>
 </tr>
</table>
<div style="overflow-x:auto; overflow-y:hidden; width:100%; height:<%=yScroll%>px">
<table width="100%" border="1" cellpadding="2" cellspacing="0" bordercolor="#aabbd7" bgcolor="#e8ecf7">
 <tr>
   <td class="LinT" height="23" align="center"><%=ChChar("CÓDIGO")%></td>
   <td class="LinT" align="center"><%=ChChar("NOME")%></td>
   <td class="LinT" align="center">TELEFONE</td>
   <td class="LinT" align="center">CELULAR</td>
   <td class="LinT" align="center">BAIRRO</td>
   <td class="LinT" align="center">CEP</td>
   <td class="LinT" align="center">CIDADE</td>
   <td class="LinT" align="center">UF</td>
   <td class="LinT" align="center"><%=ChChar("ENDEREÇO")%></td>
   <td class="LinT" align="center">STATUS</td>
 </tr>
<%
Cor = "#e8ecf7"
 While Not objSqlRs.EOF And objSqlRs.AbsolutePage = PagNav
			If cor = "#e8ecf7" Then
			cor = "#ffffff"
		Else
			cor = "#e8ecf7"
		End If

     Lin = Lin + 1 %>
 <tr bgcolor="<%=cor%>" onClick="CadBene(<%=Lin%>,<%=objSqlRs("CodManos")%>,<%=objSqlRs("Recibo")%>,<%=objSqlRs("SeqManos")%>)" onMouseOver=this.className="LinD" onMouseOut=this.className="">
   <td><%=objSqlRs("CodBenef")%></td>
   <td class="linfix"><%=vBranco(objSqlRs("Nome"))%></td>
   <td class="linfix"><%=vBranco(objSqlRs("TelRes"))%></td>
   <td class="linfix"><%=vBranco(objSqlRs("Celular"))%></td>
   <td class="linfix"><%=vBranco(objSqlRs("BairroRes"))%></td>
   <td class="linfix" align="center"><%=EditCep(objSqlRs("CepRes"))%></td>
   <td class="linfix"><%=vBranco(objSqlRs("MunicipioRes"))%></td>
   <td align="center"><%=vBranco(objSqlRs("UfRes"))%></td>
   <td class="linfix"><%=vBranco(vEnder)%></td>
   <td align="center"><%=objSqlRs("Status")%></td>
 </tr>
<%    objSqlRs.MoveNext : Wend
  'Loop

Anterior = PagNav - 1
Proximo = PagNav + 1

If Anterior <= 0 Then : Anterior = 1 : End If
If Proximo > TotalPag Then : Proximo = TotalPag : End If
%>

</div>

</table>
<hr>
<div id="indice">
<%
If Request.QueryString("pagina") = "" Then
Response.Write("Página 1 de "&TotalPag&"")
Else
Response.Write("Página "&Request.QueryString("pagina")&" de "&TotalPag&"")
End If 
%>
</div>   


<div id="paginacao">

<%
PaginaVisita = CInt(Request.QueryString("pagina"))

MontaLink = Request.ServerVariables("SCRIPT_NAME")+"?variavel=teste&"

If PagNav = 1 Then
Response.Write("<div class='pag-navegacao-off'> « primeira </div>")
else
Response.Write("<div class='pag-navegacao'><a href="""&MontaLink&"pagina=1""> « primeira </a></div>")
end if

If PagNav > 1 Then
Response.Write("<div class='pag-navegacao'><a href="""&MontaLink&"pagina="&Anterior&"""> «anterior </a></div>")
else
Response.Write("<div class='pag-navegacao-off'> «anterior </div>")
End If


If PagNav > 5 Then
Response.Write("<div class='pag-pontinhos'> ... </div>")
End If


If PagNav <= 5 Then
If TotalPag >= 5 Then
For PagAtual = 1 To 5
If PagNav = PagAtual Then
Response.Write("<div class='pag-atual'> "&PagAtual&" </div>")
Else
Response.Write("<div class='pag-link'><a href="""&MontaLink&"pagina="&PagAtual&"""> "&PagAtual&" </a></div>")
End If
Next
Else

For PagAtual = 1 To TotalPag
If PagNav = PagAtual Then
Response.Write("<div class='pag-atual'> "&PagAtual&" </div>")
Else
Response.Write("<div class='pag-link'><a href="""&MontaLink&"pagina="&PagAtual&"""> "&PagAtual&" </a></div>")
End If
Next
End If
End If


If PagNav > 5 Then
PagNav = PagNav + 4
Pg = PagNav
MaxB = Request.QueryString("pagina") - 1


If (MaxB + 1) = TotalPag Then
For PagAtual = MaxB To Pg - 4
If PaginaVisita = PagAtual Then
Response.Write("<div class='pag-atual'> "&PagAtual&" </div>")
Else
Response.Write("<div class='pag-link'><a href="""&MontaLink&"pagina="&PagAtual&"""> "&PagAtual&" </a></div>")
End If
Next                    


ElseIf (MaxB + 2) = TotalPag Then
For PagAtual = MaxB To Pg - 3
If PaginaVisita = PagAtual Then
Response.Write("<div class='pag-atual'> "&PagAtual&" </div>")
Else
Response.Write("<div class='pag-link'><a href="""&MontaLink&"pagina="&PagAtual&"""> "&PagAtual&" </a></div>")
End If
Next
Else


For PagAtual = (MaxB - 1) To Pg - 2
If PaginaVisita = PagAtual Then
Response.Write("<div class='pag-atual'> "&PagAtual&" </div>")
Else
Response.Write("<div class='pag-link'><a href="""&MontaLink&"pagina="&PagAtual&"""> "&PagAtual&" </a></div>")
End If
Next
End If
End If


If (TotalPag <> PaginaVisita) And (TotalPag > 5) Then
Response.Write("<div class='pag-pontinhos'> ... </div>")
End If


If PaginaVisita = TotalPag Then 
Response.Write("<div class='pag-navegacao-off'> próxima» </div>")
else 
Response.Write("<div class='pag-navegacao'><a href="""&MontaLink&"pagina="&Proximo&"""> próxima» </a></div>")End If

If PaginaVisita = TotalPag Then
Response.Write("<div class='pag-navegacao-off'> última » </div>")
else
Response.Write("<div class='pag-navegacao'><a href="""&MontaLink&"pagina="&TotalPag&"""> última » </a></div>")
end if

%>
</div>
<%
End If
Set objSqlRs = Nothing
%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

localize o PageSize e altere para sua quantidade

Compartilhar este post


Link para o post
Compartilhar em outros sites

Prezado xanburzum,

 

Fiz o que voce sugeriu "objSqlRs.PageSize = QtdLinGrid", o que seria correto mas nao necessário neste caso.

Quando dou um Response.Write QtdLinGrid, é mostrado o valor 17, por isso que utilizo no SQL esta variavel.

 

Mas mesmo utilizando a sugestao oferecida, e o script que voce solicitou inteiro. Continua mostrando 10 registro por página.

 

Abraços,

 

Rogarfil

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caros Colegas,

 

Venho informar que por minha insistência resolvi o problema que tanto me fez pensar.

 

Como estou iniciando nesta linguagem, e ainda não completei a terceira semana, as duvidas surgem!!!

 

Peço desculpa por qualquer tempo que eu tenha tomado dos Senhores.

 

Abraços, Fraternos

 

Rogarfil

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.