Jump to content


Photo

Pagina De Resultados


  • Faça o login para participar
2 replies to this topic

#1 amauritoscano

amauritoscano

    Turista

  • Usuários
  • 34 posts
  • Sexo:Não informado

Posted 13/04/2005, 07:02

Baseado num script do Rudá eu to adaptando o meu script do buscar.php pra ficar uma pagina de resultados mais completa...

<?
// Sistema de Paginação
// Versão 1.0
$hostname = "";
$database = "";
$username = "";
$password = "";
$conexao = mysql_pconnect($hostname, $username, $password);
mysql_select_db($database, $conexao);
$quantidade = 5;
$pagina = @$_GET["pagina"];
if (!is_numeric ($pagina)) {
$pagina = 1;
}
$query = "SELECT * from cadastro WHERE (id like '%$id%') AND (tipo like '%$tipo%') AND (cabelo like '%$cabelo%') AND (pele like '%$pele%') AND (olho like '%$olho%') AND (finalidade like '%$finalidade%') AND (nome like '%$nome%') AND (idade like '%$idade%')";
$busca = mysql_query($query, $conexao);
$paginas = mysql_num_rows($busca);
$paginas = ceil ($paginas / $quantidade);
if ($pagina > $paginas) {
$pagina = $paginas;
}
$limite = (($pagina - 1) * $quantidade);
$query = "SELECT * FROM cadastro ORDER BY nome ASC LIMIT $limite,$quantidade";
$busca = mysql_query($query, $conexao);
$tr = mysql_num_rows($busca);
echo "<font color=\"#FFFFFF\"><b><font face=\"Arial\" size=\"2\">Encontrado(s) </font><font size=\"2\" face=\"Verdana\">$tr</font><font face=\"Arial\" size=\"2\"> registro(s) para sua busca:</font></b></font><br>";
if (!$busca){
echo "<b><font face=\"Arial\" size=\"2\" color=\"#FFFFFF\">Nenhum registro foi encontrado</font></b><br><br>";
}
while($res=mysql_fetch_array($busca)){
$id = $res['id'];
$tipo = $res['tipo'];
$cabelo = $res['cabelo'];
$pele = $res['pele'];
$olho = $res['olho'];
$finalidade = $res['finalidade'];
$nome = $res['nome'];
$idade = $res['idade'];
$caracteristica = $res['caracteristica'];

echo "<div align=\"left\"></p><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" style=\"border-collapse: collapse\" width=\"551\" id=\"AutoNumber1\"><tr><td width=\"710\"><p align=\"right\"><a href=\"javaScript:OpenUp('registro.php?id=$id')\"><img src=\"imgs/seta.gif\" width=\"10\" height=\"10\" border=\"0\"><font face=verdana size=1> <b>$tipo para $finalidade - $idade</b>&nbsp;|&nbsp;veja mais&nbsp;<img src=\"imgs/mais.gif\" width=\"13\" height=\"13\" border=\"0\"></font></div></p><p align=\"right\"></a>";
}
echo "<center><font face=verdana size=1>";
$paginacao = ($pagina == 1) ? "Primeiro " : "<a href=\"" . $_SERVER["SCRIPT_NAME"] . "?pagina=1/\">Primeiro</a> ";
$paginacao .= (($pagina - 1) <= 0) ? "| Anterior" : "<a href=\"". $_SERVER["SCRIPT_NAME"] . "?pagina=" . ($pagina - 1) . "\">| Anterior</a>";
$paginacao .= (($pagina - 3) <= 0) ? "" : " | <a href=\"" . $_SERVER["SCRIPT_NAME"] . "?pagina=" . ($pagina - 3) . "\">" . ($pagina - 3) ."</a>";
$paginacao .= (($pagina - 2) <= 0) ? "" : " | <a href=\"" . $_SERVER["SCRIPT_NAME"] . "?pagina=" . ($pagina - 2) . "\">" . ($pagina - 2) ."</a>";
$paginacao .= (($pagina - 1) <= 0) ? "" : " | <a href=\"" . $_SERVER["SCRIPT_NAME"] . "?pagina=" . ($pagina - 1) . "\">" . ($pagina - 1) ."</a>";
$paginacao .= " | ".$pagina;
$paginacao .= (($pagina + 1) > $paginas) ? "" : " | <a href=\"" . $_SERVER["SCRIPT_NAME"] . "?pagina=" . ($pagina + 1) . "\">" . ($pagina + 1) ."</a>";
$paginacao .= (($pagina + 2) > $paginas) ? "" : " | <a href=\"" . $_SERVER["SCRIPT_NAME"] . "?pagina=" . ($pagina + 2) . "\">" . ($pagina + 2) ."</a>";
$paginacao .= (($pagina + 3) > $paginas) ? "" : " | <a href=\"" . $_SERVER["SCRIPT_NAME"] . "?pagina=" . ($pagina + 3) . "\">" . ($pagina + 3) ."</a>";
$paginacao .= (($pagina + 1) > $paginas) ? " | Próximo |" : " | <a href=\"". $_SERVER["SCRIPT_NAME"] . "?pagina=" . ($pagina + 1) . "\">Próximo |</a>";
$paginacao .= ($pagina == $paginas) ? " Último" : " <a href=\"" . $_SERVER["SCRIPT_NAME"] . "/" . ($paginas) . "/\">Último</a>";
echo $paginacao;
?>

Acontece o seguinte:

na pagina de resultados coloquei pra aparecer 5 registros por pagina, mandei buscar por cabelo loiro que tem 10 registros no bd, ou seja, tem a pagina 1 e 2...

a primeira pagina abre normalmente com os resultados do select, mais quando clico pra mostrar a pagina 2, aparece o resultado de todo o bd, cabelo loiro, moreno, etc... :(

como eu faço pra aparecer nas outras paginas somente o resultado que eu selecionei nos selects da pagina pesquisar.php?

desde ja eu agradeco a atencao e colaboracao de todos :D

Attached Files



#2 H3NR!QU3

H3NR!QU3

    Progamador PHP!

  • Usuários
  • 1032 posts
  • Sexo:Não informado
  • Localidade:cuiaba MT
  • Interesses:programação... PHP,JAVA,C++ ,c,c# asp, asp.net e delph

Posted 13/04/2005, 08:48

<?
// Sistema de Paginação
// Versão 1.0
$hostname = "";
$database = "";
$username = "";
$password = "";
$conexao = mysql_pconnect($hostname, $username, $password);
mysql_select_db($database, $conexao);
$quantidade = 5;
$pagina = @$_GET["pagina"];
if (!is_numeric ($pagina)) {
$pagina = 1;
}
$query2 = "SELECT * from cadastro WHERE (id like '%$id%') AND (tipo like '%$tipo%') AND (cabelo like '%$cabelo%') AND (pele like '%$pele%') AND (olho like '%$olho%') AND (finalidade like '%$finalidade%') AND (nome like '%$nome%') AND (idade like '%$idade%')";
$busca = mysql_query($query2, $conexao);
$paginas = mysql_num_rows($busca);
$paginas = ceil ($paginas / $quantidade);
if ($pagina > $paginas) {
$pagina = $paginas;
}
$limite = (($pagina - 1) * $quantidade);
$query = "SELECT * from cadastro WHERE (id like '%$id%') AND (tipo like '%$tipo%') AND (cabelo like '%$cabelo%') AND (pele like '%$pele%') AND (olho like '%$olho%') AND (finalidade like '%$finalidade%') AND (nome like '%$nome%') AND (idade like '%$idade%') order by nome ASC LIMIT $limite,$quantidade";
$busca = mysql_query($query, $conexao);
$tr = mysql_num_rows($busca);
echo "<font color=\"#FFFFFF\"><b><font face=\"Arial\" size=\"2\">Encontrado(s) </font><font size=\"2\" face=\"Verdana\">$tr</font><font face=\"Arial\" size=\"2\"> registro(s) para sua busca:</font></b></font><br>";
if (!$busca){
echo "<b><font face=\"Arial\" size=\"2\" color=\"#FFFFFF\">Nenhum registro foi encontrado</font></b><br><br>";
}
while($res=mysql_fetch_array($busca)){
$id = $res['id'];
$tipo = $res['tipo'];
$cabelo = $res['cabelo'];
$pele = $res['pele'];
$olho = $res['olho'];
$finalidade = $res['finalidade'];
$nome = $res['nome'];
$idade = $res['idade'];
$caracteristica = $res['caracteristica'];

echo "<div align=\"left\"></p><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" style=\"border-collapse: collapse\" width=\"551\" id=\"AutoNumber1\"><tr><td width=\"710\"><p align=\"right\"><a href=\"java script:OpenUp('registro.php?id=$id')\"><img src=\"imgs/seta.gif\" width=\"10\" height=\"10\" border=\"0\"><font face=verdana size=1> <b>$tipo para $finalidade - $idade</b>&nbsp;|&nbsp;veja mais&nbsp;<img src=\"imgs/mais.gif\" width=\"13\" height=\"13\" border=\"0\"></font></div></p><p align=\"right\"></a>";
}
echo "<center><font face=verdana size=1>";
$paginacao = ($pagina == 1) ? "Primeiro " : "<a href=\"" . $_SERVER["SCRIPT_NAME"] . "?pagina=1/\">Primeiro</a> ";
$paginacao .= (($pagina - 1) <= 0) ? "| Anterior" : "<a href=\"". $_SERVER["SCRIPT_NAME"] . "?pagina=" . ($pagina - 1) . "\">| Anterior</a>";
$paginacao .= (($pagina - 3) <= 0) ? "" : " | <a href=\"" . $_SERVER["SCRIPT_NAME"] . "?pagina=" . ($pagina - 3) . "\">" . ($pagina - 3) ."</a>";
$paginacao .= (($pagina - 2) <= 0) ? "" : " | <a href=\"" . $_SERVER["SCRIPT_NAME"] . "?pagina=" . ($pagina - 2) . "\">" . ($pagina - 2) ."</a>";
$paginacao .= (($pagina - 1) <= 0) ? "" : " | <a href=\"" . $_SERVER["SCRIPT_NAME"] . "?pagina=" . ($pagina - 1) . "\">" . ($pagina - 1) ."</a>";
$paginacao .= " | ".$pagina;
$paginacao .= (($pagina + 1) > $paginas) ? "" : " | <a href=\"" . $_SERVER["SCRIPT_NAME"] . "?pagina=" . ($pagina + 1) . "\">" . ($pagina + 1) ."</a>";
$paginacao .= (($pagina + 2) > $paginas) ? "" : " | <a href=\"" . $_SERVER["SCRIPT_NAME"] . "?pagina=" . ($pagina + 2) . "\">" . ($pagina + 2) ."</a>";
$paginacao .= (($pagina + 3) > $paginas) ? "" : " | <a href=\"" . $_SERVER["SCRIPT_NAME"] . "?pagina=" . ($pagina + 3) . "\">" . ($pagina + 3) ."</a>";
$paginacao .= (($pagina + 1) > $paginas) ? " | Próximo |" : " | <a href=\"". $_SERVER["SCRIPT_NAME"] . "?pagina=" . ($pagina + 1) . "\">Próximo |</a>";
$paginacao .= ($pagina == $paginas) ? " Último" : " <a href=\"" . $_SERVER["SCRIPT_NAME"] . "/" . ($paginas) . "/\">Último</a>";
echo $paginacao;
?>



tente assim...

ps: tava dando conflito entre as duas $query , não pode iniciar variaves com os mesmos nomes... e tbem estava faltando os wheres na query que defini a pagina ção (y)

#3 amauritoscano

amauritoscano

    Turista

  • Usuários
  • 34 posts
  • Sexo:Não informado

Posted 13/04/2005, 19:19

eae henrique blz, valeu pela ajuda... mais ta dando erro :blink:

o resultado ta dando exatamente o mesmo, quando manda exibir a proxima pagina aparece o resultado de todo bd...

ta com outro erro tbm que eu descobri só agora, na parte que era pra aparecer o total de registros encontrados, aparece que encontrou 5 registros, sendo que tem mais de 5... na verdade ta aparecendo que encontrou 5 registros pq eu mandei exibir 5 por pagina.

tem como me ajudar?

obrigado (y)




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq