Menegat 0 Denunciar post Postado Junho 23, 2009 Ola pessoal..... bom...estou com uma duvida qnto a scrit de paginação.....encontrei varios scripts na net, mas todos com o mxm erro. bom sou novo no php...e estou tentano criar um sistemas sozinhoo..mais pelo aprendizado.....tbm devo dizer q n entendi mto o funcionamenrto do codigo....mas espero q esse n seja o erro...xD vou postar o codigo e o erro...Jah procurei no forum..mas tbm....qndo implementava o codigo ele ficava sempre no mxm erro. agradeço as ajudas desde jah.... $total_reg = "10"; // número de registros por página if (!$pagina) { $pc = "1"; } else { $pc = $pagina; } $inicio = $pc - 1; $inicio = $inicio * $total_reg; $limite = mysql_query("$sql5 LIMIT $total_reg"); $todos = mysql_query($sql5); $tr = mysql_num_rows($sql5); // verifica o número total de registros $tp = $tr / $total_reg; // verifica o número total de páginas if($msg == ""){ while($row5 = mysql_fetch_array($limte)){ $link = $row5["id"]; echo '<img src="ff.gif" width="4" height="7"><span class="style5">_</span>' . '<span class="fonte_data">' . '<a href="produtos_detalhe.php?id='.$link.'">' . '<span class="fonte_data">' . $row5["produtos_nome"] . '</a>' .'<br><br>'; $foto++; } // botões "Anterior e próximo" $anterior = $pc -1; $proximo = $pc +1; if ($pc>1) { echo " <a href='?pagina=$anterior'><- Anterior</a> "; } echo "|"; if ($pc<$tp) { echo " <a href='?pagina=$proximo'>Próxima -></a>"; } } echo $msg; ?> e o erro q aparece eh este...:" Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in E:\marcelo\executtiva\busca.php on line 267 | Próxima -> " =´´[[[[ Compartilhar este post Link para o post Compartilhar em outros sites
André D. Molin 15 Denunciar post Postado Junho 23, 2009 É a tua query de consulta ao mysql que esta errada. Poste ela. Compartilhar este post Link para o post Compartilhar em outros sites
Menegat 0 Denunciar post Postado Junho 23, 2009 ok.. ai esta ela... $sql5 = mysql_query("select * from produtos where Categoria = '".$_GET["campo_Tipo"]."' AND produtos_dorm = '".$_GET["campo_Dorm"]."' AND produtos_bairro = '".$_GET["campo_Bairro"]."' AND produtos_faixa = '".$_GET["campo_Faixa"]."'" ); xD Compartilhar este post Link para o post Compartilhar em outros sites
Menegat 0 Denunciar post Postado Junho 23, 2009 ah.... a linha 267 do erro eh a linha do while..... \o\ Compartilhar este post Link para o post Compartilhar em outros sites
Matias Rezende 50 Denunciar post Postado Junho 23, 2009 Coloca assim $sql5 = mysql_query("select * from produtos where Categoria = '".$_GET["campo_Tipo"]."' AND produtos_dorm = '".$_GET["campo_Dorm"]."' AND produtos_bairro = '".$_GET["campo_Bairro"]."' AND produtos_faixa = '".$_GET["campo_Faixa"]."'" ) or die(mysql_error()); Posta o que aparecer Carlos Eduardo Compartilhar este post Link para o post Compartilhar em outros sites
Menegat 0 Denunciar post Postado Junho 23, 2009 http://forum.imasters.com.br/public/style_emoticons/default/no.gif n deu certtoo.... =//////// como falei...n entendo mto de php....mto menos de paginação....mas tenho a impreção de q o ero esta aqui " limite = mysql_query("$sql5 LIMIT $total_reg");".... mas n tenho certeza..... Compartilhar este post Link para o post Compartilhar em outros sites
Matias Rezende 50 Denunciar post Postado Junho 23, 2009 Não deu certo??? O que apareceu? Apareceu algum erro? Se sim, posta aqui qual foi o erro, senão fica difícil de te ajudar. Carlos Eduardo Compartilhar este post Link para o post Compartilhar em outros sites
Menegat 0 Denunciar post Postado Junho 23, 2009 o erro eh sempre o mxm... e o erro q aparece eh este...:" Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in E:\marcelo\executtiva\busca.php on line 267 | Próxima -> " desculpa a demora... Compartilhar este post Link para o post Compartilhar em outros sites
Matias Rezende 50 Denunciar post Postado Junho 23, 2009 Faz assim Todas as vezes que tiver a função mysql_query, você faz como no exemplo abaixo. $todos = mysql_query($sql5) or die('A variável $todos apresentou o seguinte erro - '.mysql_error()); Onde você vai trocar o nome da variável. Tem alguma query sua que está apresentando erro, e por isto não envia os dados para o mysql_fetch_array. Daí ele dispara este warning. Assim, como eu te falei, vai exibir na tela em qual das querys que está o erro. Poste o erro que vai exibir e a query correspondente. Carlos Eduardo Compartilhar este post Link para o post Compartilhar em outros sites
Menegat 0 Denunciar post Postado Junho 24, 2009 \o\.... Carlos..... pus em todo os querys da paginação oq você me pedio... o erro agora eh esse: " A variável $limite apresentou o seguinte erro - You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'Resource id #5 LIMIT 10' at line 1 " isso eh mto ruim?? AUHSUAsh... cara so uma duvida.....o esquema de montagem da paginação esta correto pelo menos?? abrass Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Junho 24, 2009 troca isso: $limite = mysql_query("$sql5 LIMIT $total_reg"); no mínimo precisa concatenar isso.para ficar claro: $sql_sql5 = "select * from produtos where Categoria = '".$_GET["campo_Tipo"]."' AND produtos_dorm = '".$_GET["campo_Dorm"]."' AND produtos_bairro = '".$_GET["campo_Bairro"]."' AND produtos_faixa = '".$_GET["campo_Faixa"]."'"; $sql5 = mysql_query($sql_sql5); $sql_limite = $sql_sql5." LIMIT {$total_reg} "; echo $sql_limite; $limite = mysql_query( $sql_limite )or die('A variável $limite apresentou o seguinte erro - '.mysql_error());;O erro foi, q você concatenou o resource, qndo deveria concatenar a string. Compartilhar este post Link para o post Compartilhar em outros sites
Matias Rezende 50 Denunciar post Postado Junho 24, 2009 Veja que o erro que eu coloquei foi para exibir em qual das querys estava o erro. Olha o erro " A variável $limite apresentou o seguinte erro - You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'Resource id #5 LIMIT 10' at line 1 " O que tem na variável limite? $limite = mysql_query("$sql5 LIMIT $total_reg"); O que nos leva a algumas perguntas... - $sql5 vem de onde? Qual o conteúdo dela? - $total_reg vem de onde? qual o conteúdo dela? Responda a primeira parte da pergunta. A segunda vamos responder assim: echo 'O conteúdo da variável $limite é '.$limite; echo '<br/>O conteúdo da variável $total_reg é '.$total_reg; //$limite = mysql_query("$sql5 LIMIT $total_reg"); coloca o comentário na frente desta linha. Pra ver se tem outro erro. Coloca isto e posta o resultado. Posta também a parte onde são criadas estas 2 variáveis. Com relação ao esquema de montagem a princípio está OK. Carlos Eduardo Compartilhar este post Link para o post Compartilhar em outros sites
Menegat 0 Denunciar post Postado Junho 24, 2009 Feraa.... fiz as alterações.....tirei aquela linah q você falou estar errada e postei as 3 novas como voce explicou... xD olha oq aparece... "Resource id #5 LIMIT 10 A variável $todos apresentou o seguinte erro - You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'Resource id #5 LIMIT 10' at line 1 " :( Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Junho 24, 2009 Postamos ao mesmo tempo. Verifique oq eu disse aqui: http://forum.imasters.com.br/index.php...t&p=1317686 Olha a string: 'Resource id #5 LIMIT 10' tá claro, q você tá colocando o resource e não a string na query do $limite. Muda lá o $sql5.. e o $limite.. como eu disse. Compartilhar este post Link para o post Compartilhar em outros sites
Menegat 0 Denunciar post Postado Junho 24, 2009 Veja que o erro que eu coloquei foi para exibir em qual das querys estava o erro. Olha o erro " A variável $limite apresentou o seguinte erro - You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'Resource id #5 LIMIT 10' at line 1 " O que tem na variável limite? $limite = mysql_query("$sql5 LIMIT $total_reg"); O que nos leva a algumas perguntas... - $sql5 vem de onde? Qual o conteúdo dela? - $total_reg vem de onde? qual o conteúdo dela? Responda a primeira parte da pergunta. A segunda vamos responder assim: echo 'O conteúdo da variável $limite é '.$limite; echo '<br/>O conteúdo da variável $total_reg é '.$total_reg; //$limite = mysql_query("$sql5 LIMIT $total_reg"); coloca o comentário na frente desta linha. Pra ver se tem outro erro. Coloca isto e posta o resultado. Posta também a parte onde são criadas estas 2 variáveis. Com relação ao esquema de montagem a princípio está OK. Carlos Eduardo a variavel $total_reg recebe a qntidade de item q devera apresentar por pagina....... $total_reg = "10"; // número de registros por página a variavel limite recebe os itens da varial $sql5 q possui todos os dados da busca feita...... $sql5 = mysql_query("select * from produtos where Categoria = '".$_GET["campo_Tipo"]."' AND produtos_dorm = '".$_GET["campo_Dorm"]."' AND produtos_bairro = '".$_GET["campo_Bairro"]."' AND produtos_faixa = '".$_GET["campo_Faixa"]."'" ); $limite = mysql_query("$sql5 LIMIT $total_reg") or die('A variável $limite apresentou o seguinte erro - '.mysql_error()); Compartilhar este post Link para o post Compartilhar em outros sites
Matias Rezende 50 Denunciar post Postado Junho 24, 2009 Veja que aqui é o que o Willian falou. Olha a string: 'Resource id #5 LIMIT 10' tá claro, q você tá colocando o resource e não a string na query do $limite. Muda lá o $sql5.. e o $limite.. como eu disse. Veja que aqui, para funcionar como você está fazendo, você teria que passar o SELECT, e não o resultado da query. Mais ou menos assim: $x = "select * from produtos where Categoria = '".$_GET["campo_Tipo"]."' AND produtos_dorm = '".$_GET["campo_Dorm"]."' AND produtos_bairro = '".$_GET["campo_Bairro"]."' AND produtos_faixa = '".$_GET["campo_Faixa"]."'"; $sql5 = mysql_query($x); E lá no outro, você troca $sql5 por $x. Entendeu mais ou menos? Carlos Eduardo Compartilhar este post Link para o post Compartilhar em outros sites
Menegat 0 Denunciar post Postado Junho 24, 2009 willian fiz como você falo...mas ainda acho q me perdi na sua explicação..... bom na busca eu fiz assim.... $sql_sql5 = "select * from produtos where Categoria = '".$_GET["campo_Tipo"]."'"; $sql5 = mysql_query($sql_sql5); e na parte de paginação e exibição assim....... <?php $total_reg = "10"; // número de registros por página if (!$pagina) { $pc = "1"; }else { $pc = $pagina; } $inicio = $pc - 1; $inicio = $inicio * $total_reg; $sql_limite = $sql5." LIMIT {$total_reg} "; echo $sql_limite; $limite = mysql_query( $sql_limite )or die('A variável $todos apresentou o seguinte erro - '.mysql_error()); $todos = mysql_query($sql5) or die('A variável $todos apresentou o seguinte erro - '.mysql_error()); $tr = mysql_num_rows($sql5); // verifica o número total de registros $tp = $tr / $total_reg; // verifica o número total de páginas if($msg == ""){ while($row5 = mysql_fetch_array($limite)){ $link = $row5["id"]; echo '<img src="ff.gif" width="4" height="7"><span class="style5">_</span>' . '<span class="fonte_data">' . '<a href="produtos_detalhe.php?id='.$link.'">' . '<span class="fonte_data">' . $row5["produtos_nome"] . '</a>' .'<br><br>'; $foto++; } // botões "Anterior e próximo" $anterior = $pc -1; $proximo = $pc +1; if ($pc>1) { echo " <a href='?pagina=$anterior'><- Anterior</a> "; } echo "|"; if ($pc<$tp) { echo " <a href='?pagina=$proximo'>Próxima -></a>"; } } echo $msg; ?> acho q com o codigo todo fica mais facil pra eu mostrar oq estou fazendo e para me ajudarem.....como sou novo nisso estou me atrapalhando com facilidade... se puderem fazer a alterações no codigo em outra cor..acho q ficaria ate masi facil pra mim entender..... xDD tipo como se vcs estivecem desenhando... xDD e desculpe minha ignorancia em php...... http://forum.imasters.com.br/public/style_emoticons/default/cry.gif Compartilhar este post Link para o post Compartilhar em outros sites
Matias Rezende 50 Denunciar post Postado Junho 24, 2009 Tenta fazer como no meu último POST. Deve funcionar. Carlos Eduardo Compartilhar este post Link para o post Compartilhar em outros sites
Menegat 0 Denunciar post Postado Junho 24, 2009 carlos... funcinou, mas.... veja so.... ele agora ele mostra os 10 por pagina como o especificado...... mas antes da lista de itens ele mostra essa mensagem: erro solucionado..avia um echo para mostar a variavel..(" select * from produtos where Categoria = '11' LIMIT 10 ") e qndo clico no link para proxima pagina criada para mostrar o resto da busca ele mostra isso: " LIMIT 10 A variável $limite apresentou o seguinte erro - You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'LIMIT 10' at line 1 " =/// Compartilhar este post Link para o post Compartilhar em outros sites
Fabricio Ribas 0 Denunciar post Postado Junho 24, 2009 os erros estão dando na query sql... vi que você não usa um padrão no nome das variáveis e campos, como por exemplo: Categoria = '".$_GET["campo_Tipo"]."' AND produtos_dorm = '".$_GET["campo_Dorm"]."' AND produtos_bairro = '".$_GET["campo_Bairro"]."' AND produtos_faixa = '".$_GET["campo_Faixa"]."'";Categoria, campo_Tipo, produtos_dorm, campo_Dorm, etc..Pelo que eu percebi, os "campos" você usa sempre com minúsculas: produtos_dorm, produtos_bairro e produtos_faixa , mas o campo "Categoria" está com inicial maiúscula. Sei que é meio bobinho, mas o erro pode estar aí. Compartilhar este post Link para o post Compartilhar em outros sites