AlexCT Posted January 22, 2004 Report Share Posted January 22, 2004 postei o script inteiro em PAGINAÇÃO Quote Link to comment Share on other sites More sharing options...
0 ursolouco Posted January 22, 2004 Report Share Posted January 22, 2004 Discução no forum Imasters!!!! sobre o mesmo assuntoVeja se pode lhe ajudar... Quote Link to comment Share on other sites More sharing options...
0 Guest OTIMO SCRIPT Posted January 23, 2004 Report Share Posted January 23, 2004 Já que ninguém postou uma resposta para mimEu editei este post para colocar como eu consegui fazertem dois TiposPaginação 01a paginação que deixa sempre a pagina atual centralizadaprimeira Anterior 1 2 3 4 [ 5 ] 6 7 8 9 10 Proxima ultimaprimeira Anterior 21 22 23 24 [ 25 ] 26 27 28 29 Proxima ultima---------------------------------------Paginação 02Que não fica centralizado , deixando como esta mesmo clicando nas paginasprimeira Anterior ... 1 [ 2 ] 3 4 5 6 7 8 9 10 ... Proxima ultimaprimeira Anterior ... 1 2 [ 3 ] 4 5 6 7 8 9 10 ... Proxima ultimae ao clicar nos 3 pontinhosprimeira Anterior ... [ 11 ] 12 13 14 15 16 17 18 19 20 ... Proxima ultimaPostei a paginação completa, Esta funcionando perfeirtamente. Pois estou usando. <% PagAtual = Request.QueryString("PagAtual") 'página atual Set Conn= server.createobject("adodb.connection") DSNtest = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.Mappath("db.mdb") Conn.Open DSNtest Set RS= Server.CreateObject("ADODB.Recordset") 'acrescentei por causa da paginação SQL = "SELECT * FROM jogos WHERE permissao='0' ORDER BY id ASC" RS.Open SQL, conn, 3 '############## paginacao Introdução ################# '------- Coloque aqui a quantidade de registros que você deseja por página -------- Const NumPorPage = 20 'Verifica qual a página solicitada Dim PagAtual IF Request.QueryString("PagAtual") = "" Then PagAtual = 1 'Primeira página Else PagAtual = Request.QueryString("PagAtual") End If 'Cria conexão com o Banco de Dados, já abrir anteriormente 'Criado anteriormente Set RS = Server.CreateObject("ADODB.Recordset") '>>> FIZ EM CIMA RS.CursorLocation = 3 Acerta a posição do cursor . 3 ou adUseClient RS.CacheSize = NumPorPage 'Define o tamanho do Cache = para o número de registros 'Cria a String SQL '>>> FIZ EM CIMA Dim SQLpag '>>> FIZ EM CIMA SQLpag = "SELECT * FROM jogos" '>>> FIZ EM CIMA RS.Open SQLpag, Conn Abre o RecordSet RS.MoveFirst 'Move o RecorSet para o início RS.PageSize = NumPorPage 'Coloca a quantidade de páginas Dim TotalPages 'Pega o número total de páginas TotalPages = RS.PageCount RS.AbsolutePage = PagAtual 'Configura a página atual '############## paginacao Introdução - FIM ################# Count = 0 'Zera o contador 'Inicia a Função DO, utilizando a quantidade de páginas especificadas 'Ou seja ele irá executar a ação até que o valor Count seja menor que "20" como está no nosso exemplo i = 0 DO WHILE NOT RS.EOF And Count < RS.PageSize 'paginacao And Count < RS.PageSize ' ----- linhas coloridas ------- if i mod 2<>0 then cor = "#F4F4F4" else cor = "#e1e1e1" end if '------------------------------- %> [b]CONTEUDO HTML[/b] <% i = i+1 Count = Count + 1 'paginacao RS.MoveNext LOOP 'tb paginacao %> PAGINAÇÃO 01 <% '################## paginacao 01 ##################### 'Coloca o Nº página atual / Nº Total de páginas Response.Write("<B><font color=""#006600"" size=""2"" face=""Arial""><strong> Página " & PagAtual & " de " & TotalPages & " </strong></font></B> - ") 'Mostra os botões: Anterior e Próxima, utilizando da opção de IF IF PagAtual > 1 THEN 'Se for a primeira página, Mostra apenas o botão Próximo e Ultima Response.Write("<B><font color=""#660066"" size=""1"" face=""Arial"">") Response.Write("<a href='jogos.asp?PagAtual=" & 1 & "'>") Response.Write("Primeira") Response.Write("</a></font></B> ") Response.Write("<B><font color=""#660066"" size=""2"" face=""Arial"">") Response.Write("<a href='jogos.asp?PagAtual=" & PagAtual - 1 & "'>") Response.Write("Anterior") Response.Write("</a></font></B> ") Response.Write("<B><font color=""#660066"" size=""2"" face=""Arial"">") Response.Write("<a href='jogos.asp?PagAtual=" & PagAtual - 1 & "'>") Response.Write("Anterior") Response.Write("</a></font></B> ") Else Response.Write("<B><font color=""#EEEEEE"" size=""1"" face=""Arial"">") Response.Write("Primeira") Response.Write("</font></B> ") Response.Write("<B><font color=""#CCCCCC"" size=""2"" face=""Arial"">") Response.Write("Anterior") Response.Write("</font></B> ") End If '------------------- numero ------------------------- '---------- Numero de numeros para ser mostrados ---- max_n_mostrados = 9 intervalo = Int(max_n_mostrados /2) inicio = PagAtual - intervalo final = PagAtual + intervalo If CInt(inicio) <1 Then inicio = 1 final = 10 END IF If CInt(final) > CInt(TotalPages) Then final = TotalPages For i = inicio To final If CInt(i)=CInt(PagAtual) Then Response.Write "<font color=""#660066"" size=""1"" face=""Arial"">[ <B>" & i & "</B> <font color=""#660066"">]</font> " END IF If CInt(i) < CInt(PagAtual) Then Response.Write "<a href='jogos.asp?PagAtual=" & i & "'>" & i & "</a> " END IF If CInt(i) > CInt(PagAtual) Then Response.Write "<a href='jogos.asp?PagAtual=" & i & "'>" & i & "</a> " END IF Next '------------------------------------------------------ IF CInt(PagAtual) <> CInt(TotalPages) THEN 'Se estiver na última página, mostra apenas o botão Anterior e Primeira Response.Write("<B><font color=""#660066"" size=""2"" face=""Arial"">") Response.Write("<a href='jogos.asp?PagAtual=" & PagAtual + 1 & "'>") Response.Write("Próxima") Response.Write("</a></font></B> ") Response.Write("<B><font color=""#660066"" size=""1"" face=""Arial"">") Response.Write("<a href='jogos.asp?PagAtual=" & TotalPages & "'>") Response.Write("Ultima") Response.Write("</a></font></B> ") Else Response.Write("<B><font color=""#CCCCCC"" size=""2"" face=""Arial"">") Response.Write("Próxima") Response.Write("</font></B> ") Response.Write("<B><font color=""#EEEEEE"" size=""1"" face=""Arial"">") Response.Write("Ultima") Response.Write("</font></B> ") End If '################## fim paginacao 01 ######################## PAGINAÇÃO 02 '################## paginacao 02 ############################# 'Coloca o Nº página atual / Nº Total de páginas Response.Write("<B><font color=""#006600"" size=""2"" face=""Arial""><strong> Página " & PagAtual & " de " & TotalPages & " </strong></font></B> - ") 'Mostra os botões: Anterior e Próximo, utilizando da opção de IF '----------- Numeros - Calculos --------------------------------------------- var01 = Len(PagAtual) 'Lê o tamanho do numero var02 = var01 - 1 'subtrai um da variavel , retirando o digito menos sig. var03 = Left(PagAtual,var02) 'obtem os digitos mais sig. do numero var04 = Right(PagAtual,1) 'obtem o digito menos sig. do numero var05 = var03 & 0 ' Acrecenta ZERO no final IF var04 <> 0 THEN ' condição se o digito menos sig. é Zero inicial = var05 + 1 final = inicial + 9 ELSE inicial = var05 - 9 final = var05 END IF indice_i = var04 - 1 'ultimo digito - 1 indice_f = 10 - var04 ' 10 - digito menos sig. ' If CInt(inicial) < 1 Then inicial = 1 If CInt(final) > CInt(TotalPages) Then final = TotalPages '------------------------------------------------------------------------------ IF PagAtual > 1 THEN 'Se for a primeira página, Mostra apenas o botão Próximo e Ultima Response.Write("<B><font color=""#660066"" size=""1"" face=""Arial"">") Response.Write("<a href='jogos.asp?PagAtual=" & 1 & "'>") Response.Write("Primeira") Response.Write("</a></font></B> ") Response.Write("<B><font color=""#660066"" size=""2"" face=""Arial"">") Response.Write("<a href='jogos.asp?PagAtual=" & PagAtual - 1 & "'>") Response.Write("Anterior") Response.Write("</a></font></B> ") IF PagAtual > 10 THEN Response.Write("<B><font color=""#660066"" size=""2"" face=""Arial"">") Response.Write("<a href='jogos.asp?PagAtual=" & inicial - 1 & "'>") Response.Write("...") Response.Write("</a></font></B> ") ELSE Response.Write("<B><font color=""#CCCCCC"" size=""2"" face=""Arial"">") Response.Write("....") Response.Write("</font></B> ") END IF Else Response.Write("<B><font color=""#EEEEEE"" size=""1"" face=""Arial"">") Response.Write("Primeira") Response.Write("</font></B> ") Response.Write("<B><font color=""#CCCCCC"" size=""2"" face=""Arial"">") Response.Write("Anterior") Response.Write("</font></B> ") Response.Write("<B><font color=""#CCCCCC"" size=""2"" face=""Arial"">") Response.Write("...") Response.Write("</font></B> ") End If '---------------------- NUMEROS --------------------------- For i = inicial To final If CInt(i)=CInt(PagAtual) Then Response.Write "<font color=""#660066"" size=""1"" face=""Arial"">[ <B>" & i & "</B> <font color=""#660066"">]</font> " END IF If CInt(i) < CInt(PagAtual) Then Response.Write "<font color=""#660066"" size=""1"" face=""Arial""><a href='jogos.asp?PagAtual=" & i & "'>" & i & "</a></font> " END IF If CInt(i) > CInt(PagAtual) Then Response.Write "<font color=""#660066"" size=""1"" face=""Arial""><a href='jogos.asp?PagAtual=" & i & "'>" & i & "</a></font> " END IF Next '------------------------------------------------------ IF CInt(PagAtual) <> CInt(TotalPages) THEN p1 = Left(PagAtual,var02) p2 = Left(TotalPages,var02) p3 = Left(TotalPages,var02) & 0 'CONDIÇÕES 'digitos PagAtual <> Primeiros digitos mais sig. da TotalPag 'OU 'Ultimo numero que será mostrado = Primeiros digitos mais sig. da TotalPag + Zero no final 'tamanho do numero IGUAL a 1 IF (p1 <> p2) or (final = p3) or (var01 = 1) THEN Response.Write("<B><font color=""#660066"" size=""2"" face=""Arial"">") Response.Write("<a href='jogos.asp?PagAtual=" & final + 1 & "'>") Response.Write("...") Response.Write("</a></font></B> ") ELSE Response.Write("<B><font color=""#CCCCCC"" size=""2"" face=""Arial"">") Response.Write("...") Response.Write("</font></B> ") END IF Response.Write("<B><font color=""#660066"" size=""2"" face=""Arial"">") Response.Write("<a href='jogos.asp?PagAtual=" & PagAtual + 1 & "'>") Response.Write("Próxima") Response.Write("</a></font></B> ") Response.Write("<B><font color=""#660066"" size=""1"" face=""Arial"">") Response.Write("<a href='jogos.asp?PagAtual=" & TotalPages & "'>") Response.Write("Ultima") Response.Write("</a></font></B> ") ELSE Response.Write("<B><font color=""#CCCCCC"" size=""2"" face=""Arial"">") Response.Write("...") Response.Write("</font></B> ") Response.Write("<B><font color=""#CCCCCC"" size=""2"" face=""Arial"">") Response.Write("Próxima") Response.Write("</font></B> ") Response.Write("<B><font color=""#EEEEEE"" size=""1"" face=""Arial"">") Response.Write("Ultima") Response.Write("</font></B> ") End If '################## fim paginacao 02 ####################### Rs.Close Set RS = Nothing Conn.Close Set Conn = Nothing %> Quote Link to comment Share on other sites More sharing options...
Question
AlexCT
postei o script inteiro em PAGINAÇÃO
Link to comment
Share on other sites
2 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.