Jean Paulo Postado Outubro 13, 2010 Denunciar Share Postado Outubro 13, 2010 (editado) Salve galera!.Mas uma vez aqui .Agora é o seguinte.Vou dar um SELECT * em uma lista de sites , e vou exibir na pagina inicial.No include da principal ta puchando isso:"SELECT * FROM listaservidores_adm WHERE aprovado=1 ORDER BY votos DESC LIMIT 0, 10"ou seja, na minha logica eu quero somente exibir os 10 primeiros.porém quero que haja um botão no fim da pagina para exibir os proximos 10, e assim sucessivamente sem um limite de paginas.Como eu poderia faser isso? Editado Outubro 13, 2010 por Jean Paulo Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Stoma Postado Outubro 13, 2010 Denunciar Share Postado Outubro 13, 2010 Você poderia, no link que vai para a próxima página, passar por get o último registro impresso e quando for fazer a consulta, incrementar +10 no OFFSET para pegar os próximos 10 registros... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jean Paulo Postado Outubro 13, 2010 Autor Denunciar Share Postado Outubro 13, 2010 StomaVocê poderia dar algum exemplo, ou deixar mais claro.porque tipo, eu tenho conhecimento de PHP é de aprender sozinho mesmo saca.Tanto é que eu so sei criar as minhas coisas me baseando em algo pré definido, e assim vou adaptando conforme minhas ncessidades.E agora nisso que tenho que faser do zero eu fico sem saida.O meu include que mostra o Rank é esse:<style type="text/css"> <!-- .titulo { color: #13729F; } .laranja { color: #FF8040; } .laranja { color: #FF0; } .laranja { color: #F3570C; } --> </style> <body> <div align="center"> <h2 class="titulo">"TOP SERVIDORES"<br /> L2-Servidor.com</h2> </div> <?php $sql = mysql_query("SELECT * FROM listaservidores_adm WHERE aprovado=1 ORDER BY votos DESC LIMIT 0, 10") or die(mysql_error()); $cor = 0; while($c = mysql_fetch_array($sql)) { $cor++; $bg = $cor % 2 == 0 ? '#A6A6A6': '#7C7C7C'; ?> <div align="center"> <table width="484" height="144" border="0"> <tr> <td width="620"> <div align="left"> <table width="314" border="0"> <tr> <td><a href=" <?php if((substr($c['nomesite'],0,7)=="http://") || (substr($c['nomesite'],0,7)=="https://")){ echo $c['nomesite']; } else { echo "http://".$c['nomesite'];} ?> " onClick=""><h2><?php echo $c['nomeservidor']; ?></h2></a></td> </tr> </table> </div></td> </tr> <tr> <td><div align="center"> <table width="468" border="1"> <tr> <td><img src="<?php if((substr($c['linkbanner'],0,7)=="http://") || (substr($c['linkbanner'],0,7)=="https://")){ echo $c['linkbanner']; } else { echo "http://".$c['linkbanner'];} ?>" alt="" width="468" height="60" /></td> </tr> </table> </div></td> </tr> <tr> <td><div align="left"> <p>Descrição:<br> <TEXTAREA name="descricao" COLS="50" ROWS="3" disabled wrap="physical" id="descricao" onKeyDown="textCounter(this.form.message,this.form.remLen,180);" onKeyUp="textCounter(this.form.descricao,this.form.remLen,180);"><?php echo $c['descricao'] ?></TEXTAREA> </p> </div></td> </tr> <tr> <td><table width="477" border="1"> <tr> <td>Tipo de Rate: <?php echo $c['rateservidor']; ?></td> <td>Idioma: <?php echo $c['idioma']; ?></td> <td>Votos: <?php echo $c['votos']; ?></td> <td>Cliques: <?php echo $c['cliques']; ?></td> </tr> </table></td> </tr> </table> </div> <p> </p> <?php } ?> </body> </html> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Stoma Postado Outubro 13, 2010 Denunciar Share Postado Outubro 13, 2010 Tranquilo... um jeito de fazer seria este:0 - $pagina = (isSet($_GET['pagina'])) ? ($_GET['pagina']) : 0; 1 - $offset = $pagina*10; 2 - $pagina = $pagina+1; 3 - $sql = mysql_query("SELECT * FROM listaservidores_adm WHERE aprovado=1 ORDER BY votos DESC LIMIT $offset, 10") or die(mysql_error()); ?> <br/> 4 - <a href="rank.php?pagina=<?php echo($pagina); ?>">Próxima página</a>O que foi feito aí foi o seguinte:0 - Se $_GET['pagina'] existir, então a variável recebe o valor de $_GET['pagina'], caso contrário recebe o valor 0, sendo que $_GET['pagina'] só existirá se foi clicado no link (se for a primeira página, ainda não existirá $_GET['pagina']);1 - $offset é multiplicado por 10 já que você quer pegar de 10 em 10, sendo que offset é a partir de qual linha será retornado os registros do banco;2 - Adicionado +1 e $pagina fica sendo qual será a próxima página3 - É executada a consulta, passando o valor de $offset que indicará a partir de qual registro deve ser retornado;4 - Monta o link passando por GET o atual valor da variável $pagina (que será a próxima página) como parâmetroEntendeu a lógica? Tudo o que precisa ser feito, é alterar o valor de $offset para que seja retornado a partir de x linha. Se for a primeira página, será a partir da linha 0, se for a segunda será a partir da linha 10, se for a terceira será a partir da linha 30 e assim por diante.Se não entendeu, eu tento explicar de outra forma (vou almoçar agora, daqui 1 hora+- to de volta)Abraços Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jean Paulo Postado Outubro 13, 2010 Autor Denunciar Share Postado Outubro 13, 2010 Nossa cara, sinceramente tu é fodah, com todo respeito.E também muito obrigado por já deichar pronto para mim eim, obrigado mesmo.So tem um unico problema..eu não sei como te explciar direito, mas tipo....somente se eu acessar o www.meusite.com/rank.phpque dai eu consigo ir clicando no link:<a href="rank.php?pagina=<?php echo($pagina); ?>">Próxima página</a>e as paginas vão incrementando....acontece que esse RANK.php é o include da minha index.não sei bem ao certo como te explicar,,, mas ele so funciona se eu executar ele diretamente da pagina, e não da principal com includ. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Stoma Postado Outubro 13, 2010 Denunciar Share Postado Outubro 13, 2010 (editado) Que nada, ainda estou aprendendo também! ^_^Você está utilizando iframes?obs: teria como você postar o pedaço de código da página principal onde você chama o rank? Editado Outubro 13, 2010 por Stoma Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 raphaa Postado Outubro 13, 2010 Denunciar Share Postado Outubro 13, 2010 Só uma duvida, seu site é com lista de servidores de qual jogo? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jean Paulo Postado Outubro 13, 2010 Autor Denunciar Share Postado Outubro 13, 2010 StomaAqui esta, o código que puxa o include é esse:<?php require_once( $page.".php" ); ?>onde o valor da variavel $page fica no arquivo config.php, ela possui o valor "rank" (sem aspas). raphaaEstou desenvolvendo um para servidores de Lineage II Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Stoma Postado Outubro 13, 2010 Denunciar Share Postado Outubro 13, 2010 Então tente alterar o link para a página principal:<a href="index.php?pagina=<?php echo($pagina); ?>">Próxima página</a>obs: como você está fazendo no config.php? Fazendo da forma que você fez, você deve tomar o cuidado de limitar o valor que a variável $page pode receber, pois qualquer pessoa pode alterar o valor desta variável por GET e incluir outro arquivo php com código maliciosos para seu site! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jean Paulo Postado Outubro 13, 2010 Autor Denunciar Share Postado Outubro 13, 2010 Minha requisição ta assim oh:$page = isset( $_GET['page'] ) ? $_GET['page'] : "home";// páginas não concluídas ou inválidas - usuário //////////if( !is_file( $page.".php" ) ) { $page = "notfound";} Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Stoma Postado Outubro 13, 2010 Denunciar Share Postado Outubro 13, 2010 Entendi. Creio que assim não tenha problema, já que você verifica se o arquivo existe no diretório...Deu certo o novo link? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jean Paulo Postado Outubro 13, 2010 Autor Denunciar Share Postado Outubro 13, 2010 (editado) Deu certo tudinhoo... Editado Outubro 13, 2010 por Jean Paulo Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Stoma Postado Outubro 13, 2010 Denunciar Share Postado Outubro 13, 2010 Beleza então! ^_^ Qualquer coisa estamos aí!Abraços Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jean Paulo Postado Outubro 13, 2010 Autor Denunciar Share Postado Outubro 13, 2010 (editado) Vou tentar faser uma para retornar,,, me veio uma aula de "portugol" agora,, vou tentar heheeusei o simples asjdasudhas <h3 align="center"><a href="index.php?pagina=<?php echo($pagina); ?>">Próxima página</a></h3> <h3 align="center"><a href="index.php?pagina=<?php echo($pagina-2); ?>">Página Anterior</a></h3>no final é -2 porque o $pagina já passou pelo laço de incremento de +1Mas tem um problema,,,, se ficar -1 da erro de sintaxe; Gostaria que se o $pagina fosse >0 exibisse o link de Pagina Anterior, caso contrario nãoaté hoje sempre quebrei a cabeça na exibição ou não de um link.Tanto é que eu sempre ccrio uma pagina principal,,,, se a condição for verdadeira exibi a que tem o link, se for falsa exibi a que não tem. Editado Outubro 13, 2010 por Jean Paulo Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 raphaa Postado Outubro 13, 2010 Denunciar Share Postado Outubro 13, 2010 Jean PauloHmm, pensei que era de Ragnarok. Eu já tive um site de lista de servidores Ragnarok e também passei por essa mesma duvida. Na verdade ainda a tenho :) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Stoma Postado Outubro 13, 2010 Denunciar Share Postado Outubro 13, 2010 (editado) É simples, é só verificar se página>0, se for você imprime o link:if($pagina>0){ echo("<a href='index.php?pagina=$pagina-2'>Anterior</a>"); } Editado Outubro 13, 2010 por Stoma Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jean Paulo Postado Outubro 13, 2010 Autor Denunciar Share Postado Outubro 13, 2010 (editado) Tudo certo. xD Vlw Editado Outubro 13, 2010 por Jean Paulo Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Jean Paulo
Salve galera!.
Mas uma vez aqui .
Agora é o seguinte.
Vou dar um SELECT * em uma lista de sites , e vou exibir na pagina inicial.
No include da principal ta puchando isso:
"SELECT * FROM listaservidores_adm WHERE aprovado=1 ORDER BY votos DESC LIMIT 0, 10"
ou seja, na minha logica eu quero somente exibir os 10 primeiros.
porém quero que haja um botão no fim da pagina para exibir os proximos 10, e assim sucessivamente sem um limite de paginas.
Como eu poderia faser isso?
Editado por Jean PauloLink para o comentário
Compartilhar em outros sites
16 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.