Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS


Moderador: web

 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 121

Paginação

01-12-2008 14:23

Galera to com um simples problema para muitos, mais para mim um problemão.
Tipo tenho um sistema de cadastros, listo todos, só que como são muitos demora a carregar ai queria fazer uma páginação não é páginação de busca como achei muita no fórum.

Queria apenas saber como fazer para ele ao invez de puxar tudo em uma página dividir em várias paginaçãos para agilizar o carregamente da página inicial.

Aguardo e desde já agradeço se alguém puder me responder, enquanto isso to na busca.
Att
Nill Ribeiro
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17549
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Paginação

01-12-2008 14:25

Isso é uma paginação mesmo, porque separa uma consulta em várias páginas. Uma que indico é a do link abaixo

http://www.codigosnaweb.com/forum/viewt ... f=33&t=943

Você configura os dados da conexão, o SELECT e os campos a serem mostrados.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 121

Paginação

01-12-2008 17:30

Pensa num cara que já apanhou desta paginação hoje, rsss..

Bom montei uma assim: só que quando executa da a mensagem Query was empty acho que estou perto, alguém pode dar uma luz?

<? include "../config.php"; $conexao = mysql_connect("$dbhost","$dbuser","$dbpass"); $sql = mysql_query("SELECT * FROM mural"); $exec = mysql_query($sql, $conexao) or die(mysql_error()); $lpp = 2; $total = mysql_num_rows($sql); $paginas = ceil($total / $lpp); if(!isset($pagina)) { $pagina = 0;} $inicio = $pagina * $llp; $sql = mysql_query("SELECT * FROM mural LIMIT $inicio,$lpp"); while($l = mysql_fetch_array($sql)) { echo "Resultado.... n"; } if($pagina > 0) { $menos = $pagina - 1; $url = "$PHP_SELF?pagina=$menos"; echo "<a href=\"$url\">Anterior</a>"; } for($i=0;$i<$paginas;$i++) { $url = "$PHP_SELF?pagina=$i"; echo " | <a href=\"$url\">$i</a>"; } if($pagina < ($paginas - 1)) { $mais = $pagina + 1; $url = "$PHP_SELF?pagina=$mais"; echo " | <a href=\"$url\">Próxima </a>"; } ?>

0
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 121

Paginação

01-12-2008 17:45

Esta também passou perto, mostra tudo só que não muda para próxima e nem da a opção de voltar.

<?php include "../config.php"; $conexao = mysql_connect("$dbhost","$dbuser","$dbpass"); $db = mysql_select_db("$dbname") or die ("Banco de Dados Inesistente!"); $resultado_pagina="2"; // resultados por página $tabela="mural"; // tabela do bd $sql=mysql_query("SELECT * FROM $tabela"); $total=mysql_num_rows($sql); if($pagina=="") { $pagina="1"; } $maximo=$resultado_pagina; $inicio=$pagina-1; $inicio=$maximo*$inicio; $query=mysql_query("SELECT * FROM $tabela LIMIT $inicio,$maximo"); while($dados=mysql_fetch_array($query)) { extract($dados); echo "De: $de - Para: $para<br>"; echo "$mensagem<br>"; echo "------------------------------<br>"; } $menos=$pagina-1; $mais=$pagina+1; $p_ini=$mais-1; $p_ini=$maximo*$p_ini; $p_query=mysql_query("SELECT * FROM $tabela LIMIT $p_ini,$maximo"); $p_total=mysql_num_rows($p_query); echo "<center>"; if($menos>0) { echo "<a href=\"?pagina=$menos\">:: anterior(es)</a> "; } else { echo ":: anterior(es)"; } echo " - Página atual: (<b> $pagina </b>) - "; $paginar = $total/$maximo; if($paginar>$pagina) { echo "<a href=\"?pagina=$mais\">próxima(s) ::</a>"; } else { echo "próxima(s) ::"; } echo "</center>"; ?> <div align=right> Estamos com <b><?php echo $total; ?></b> entrada(s). <br> mostrando <b><?php echo $maximo; ?></b> entrada(s) por página. <br> mostrando <b><?php echo $paginar; ?></b> página(s). </div> <?php mysql_close($conexao); ?>

0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17549
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Paginação

01-12-2008 17:57

Realmente, o script que te indiquei estava com duas falhas, ele não estava pegando o id vindo pelo link ( GET ). Se quiser alterar ai, troca as linhas 28 e 28

if ($id == ''){$param = 0;} else {
$temp = $id;

por

if ($_GET['id'] == ''){$param = 0;} else {
$temp = $_GET['id'];

Com isso o problema da paginação de não avançar já está resolvido. No mais só editar os dados pedido no script.

Já fiz a alteração no script original indicado.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 121

Paginação

01-12-2008 18:08

desculpe a minha ignorancia, mais na parte que diz complemento seria o da tabela?

//###
$sql = "select * from $table"; // COMPLEMENTO
$sql_01 = "select * from $table limit $param,$maxpag"; // COMPLEMENTO
//###

aTT
nILL rIBEIRO
0
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 121

Paginação

01-12-2008 18:13

Me localizei, rs, consegui.
Att
Nill Ribeiro
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17549
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Paginação

01-12-2008 18:25

:wink
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 121

Paginação

01-12-2008 18:32

Encontrei outro probleminha, tipo ta tudo funcinando, só que quando clica na página um o anterior fica com o link e ao clicar nele ele puxa o zero e a pagina zero tinha que ser nula não?
Tipo ao estar na página 1 o anterior não tinha que dar link não?

Att
Nill RIbeiro
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17549
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Paginação

01-12-2008 18:50

Não entendi, a página 1 é neutra, não dá link, em todo caso, faz um print ai para explicar.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 121

Paginação

01-12-2008 19:38

Então a página 1 não ta sendo neutra.

Ex estou na página 1 e aparece

anterior(es) 1 quando não deveria aparecer o link, correto?, e se eu clicar em anterior(es) 1 ele da link para o id=0

Só este problema.
Att
Nill Ribeiro
0
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 121

Paginação

01-12-2008 19:45

achei o erro

Foi só mudar
<?php
if ($id > 1) {
?>

para

<?php
if ($id <= 1) {
?>
ai funcionou

Valeu

Há só irformando que não foi a ideal, rs, mais até que eu descubra qual ideial eu uso está.
Até porque ai de forma alguma a função anteriores aparece.

Att
Nill Ribeiro
0
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 121

Paginação

01-12-2008 20:02

agora sim, a variavél declarada para id era temp e não id

mudei assim

<?php
if ($temp >1) {
?>

agora ficou certinho.
Funcionando tudo.
Att
Nill Ribeiro
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17549
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Paginação

01-12-2008 20:50

Boa
0
A melhor hospedagem para o seu site HostGator!

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado