branquinho Postado Maio 5, 2010 Denunciar Share Postado Maio 5, 2010 bom gente... não to conseguindo fazer funcionar :Scodigo é*********testebc.html***************<html><head><title> teste banco de dados </title><head><body>digite sua pesquisa <br/><form method="post" action="testebcs.php"><select name="searchtype"><option name="author">author</option><option name="title">Title</option><option name="isbn">Isbn</option></select><br/>digite o que você quer : <input type="text" name="searchterm"><br/><input type="submit" value="enviar"></form></body></html>********testebc.php **************** O ERRO DA NA LINHA 30 ( EM NEGRITO)<html><head><title> sasuaiousa </title></head><body><?php$searchtype = $_POST['searchtype'];$searchterm = $_POST['searchterm'];$searchterm = trim($searchterm);if ( !$searchtype || !$searchterm ) {echo 'preencha os campos';exit;}$searchterm = addslashes($searchterm);$searchtype = addslashes($searchtype);@ $db = mysql_pconnect ('localhost','root', '');if(!$db){echo 'mysql não conseguio se conectar';exit;}mysql_select_db('books');$query = "select * from books where".$searchtype." like '%"$searchterm"%'";$result = mysql_query($query);$num_results = mysql_num_rows($result); ---------------------------- >ACUSA ERROecho '<p> number for books found: '.$num_results.'</p>';for ($i; $i<$num_results; $i++) {$row = mysql_fetch_array($result);echo '<p><strong>'.($i+1).' Title:';echo htmlspecialchar(stripslashes($row['title']));echo '</strong><br /> Author: ';echo stripslashes($row['author']);echo '<br/> price: ';echo stripslashes($row['price']);echo '</p>';}?></body></html>********************************************ERRO :Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\wamp\www\testebcs.php on line 30number for books found: Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 *FIT* Postado Maio 5, 2010 Denunciar Share Postado Maio 5, 2010 O erro está nessa linha$query = "select * from books where".$searchtype." like '%"$searchterm"%'";Verifique os campos se estão corretos, e por via de dúvida, de um espaço depois do where! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 branquinho Postado Maio 6, 2010 Autor Denunciar Share Postado Maio 6, 2010 não não... disfarça... copiei antes de ressalvar ajeitado :D antes o erro era ai! :XTESTEBCS.PHP***************<html><head><title> sasuaiousa </title></head><body><?php$searchtype = $_POST['searchtype'];$searchterm = $_POST['searchterm'];$searchterm = trim($searchterm);if ( !$searchtype || !$searchterm ) {echo 'preencha os campos';exit;}$searchterm = addslashes($searchterm);$searchtype = addslashes($searchtype);@ $db = mysql_pconnect ('localhost','root', '');if(!$db){echo 'mysql não conseguio se conectar';exit;}mysql_select_db('books');$query = "select * from books where $searchtype like $searchterm ";$result = mysql_query($query);$num_results = mysql_num_rows($result); --------> ERROecho '<p> number for books found: '.$num_results.'</p>';for ($i; $i<$num_results; $i++) {$row = mysql_fetch_array($result);echo '<p><strong>'.($i+1).' Title:';echo htmlspecialchar(stripslashes($row['title']));echo '</strong><br /> Author: ';echo stripslashes($row['author']);echo '<br/> price: ';echo stripslashes($row['price']);echo '</p>';}?></body></html> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 *FIT* Postado Maio 6, 2010 Denunciar Share Postado Maio 6, 2010 O erro continua naquela linha, se ele não retorna a quantidade de linhas é porque tem alguma coisa errada no select ;)Tente assim, ou confira os nomes dos campos na base de dados!$query = "select * from books where $searchtype like '%$searchterm%' "; Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 branquinho Postado Maio 6, 2010 Autor Denunciar Share Postado Maio 6, 2010 não :Sagora da esse erro aki ... Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\wamp\www\testebcs.php on line 30number for books found:Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\wamp\www\testebcs.php on line 341 Title:Fatal error: Call to undefined function htmlspecialchar() in C:\wamp\www\testebcs.php on line 36 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 *FIT* Postado Maio 6, 2010 Denunciar Share Postado Maio 6, 2010 Faz o seguinte...antes do select manda printar essas duas variaveis pra ver o que esta retornando!$searchtype e $searchterm Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 rickayron Postado Maio 7, 2010 Denunciar Share Postado Maio 7, 2010 Faz o seguinte...antes do select manda printar essas duas variaveis pra ver o que esta retornando!$searchtype e $searchtermmysql_select_db('books');$result = mysql_query("select * from books where $searchtype like $searchterm ") or die( mysql_error());adicione isso na linha assim o banco retornará o erro que está ocorrendo Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 branquinho Postado Maio 7, 2010 Autor Denunciar Share Postado Maio 7, 2010 não ta printando o seachterm :oe diz que não ta selecionada a database :o com o OR DIEnão entendi :S ta tudo aparentemente correto :D Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 rickayron Postado Maio 7, 2010 Denunciar Share Postado Maio 7, 2010 não ta printando o seachterm :o e diz que não ta selecionada a database :o com o OR DIEnão entendi :S ta tudo aparentemente correto :D@ $db = mysql_pconnect ('localhost','root', '');if(!$db){echo 'mysql não conseguio se conectar';exit;}evite usar o @ pois ele oculta um provavel erro assim ficara impossivel de diagnosticar corretamente onde está o erro$db=mysql_connect("localhost","root","");if(!$db){echo 'mysql não conseguio se conectar';exit;}$banco=mysql_select_db('books');if (!$banco){ echo "erro no banco";}$result = mysql_query("select * from books where $searchtype like $searchterm ") or die( mysql_error());verifique se o nome do banco está correto e troque o trecho acima até mais Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 branquinho Postado Maio 7, 2010 Autor Denunciar Share Postado Maio 7, 2010 (editado) $num_results = mysql_num_rows($result);da um erro nessa linha !não sei porque! mesmo assim na adianta se não ta reconhecendo o $searchterm :Sdetalhe... o search type reconhece !***form html***<form method="post" action="results.php">escolha o tipo de procura :<br /><br/> <select name="searchtype"> <option value="author">Autor</option> <option value="title"> title </option> <option value="......."> ........... </option> </select><input name="searchterm" type= "text" /><br/><input type="submit" value="Search" /></form>**passagem pro php***<?php$searchtype = $_POST['searchtype'];$searchterm = $POST['searchterm'];$searchterm = trim($searchterm); ************88ai diz que não tem $searchterm Editado Maio 7, 2010 por branquinho Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 rickayron Postado Maio 7, 2010 Denunciar Share Postado Maio 7, 2010 $num_results = mysql_num_rows($result);da um erro nessa linha !não sei porque! mesmo assim na adianta se não ta reconhecendo o $searchterm :Sdetalhe... o search type reconhece !***form html***<form method="post" action="results.php">escolha o tipo de procura :<br /><br/><select name="searchtype"><option value="author">Autor</option><option value="title"> title </option><option value="......."> ........... </option></select><input name="searchterm" type= "text" /><br/><input type="submit" value="Search" /></form>**passagem pro php***<?php$searchtype = $_POST['searchtype'];$searchterm = $POST['searchterm'];$searchterm = trim($searchterm);************88ai diz que não tem $searchtermNote que ($searchterm = $POST['searchterm'];) voce não está pegando os dados troque essa linha $searchterm = $POST['searchterm'];por isso $searchterm = $_POST['searchterm'];até mais Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 branquinho Postado Maio 7, 2010 Autor Denunciar Share Postado Maio 7, 2010 (editado) :o erro mais idiota que eu já vi, esse meu :Pmas agora da erro na linha em negrito :\******php*************$db = mysql_pconnect('localhost','root',''); if (!db) { echo 'error: cold.........'; exit; }$db = mysql_select_db('testes');$query = "select * from books where ".$searchtype." like ".$searchterm." ";$result = mysql_query($query);$num_results = mysql_num_rows($result);echo "numero de resultados encontrados = ".$num_results;for ($i=0; $i <$num_results; $i++){ echo '<p><strong>'.($i+1).'TITLE'; echo htmlspecialchars(stripslashes($row['title'])); echo'</strong><br />Autor: '; echo stripslashes( $row['Author']); echo '<br/> ........ '; echo stripslashes( $row['.....']);} Editado Maio 7, 2010 por branquinho Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 rickayron Postado Maio 8, 2010 Denunciar Share Postado Maio 8, 2010 :o erro mais idiota que eu já vi, esse meu :P mas agora da erro na linha em negrito :\******php*************$db = mysql_pconnect('localhost','root','');if (!db) {echo 'error: cold.........';exit;}$db = mysql_select_db('testes');$query = "select * from books where ".$searchtype." like ".$searchterm." ";$result = mysql_query($query);$num_results = mysql_num_rows($result);echo "numero de resultados encontrados = ".$num_results;for ($i=0; $i <$num_results; $i++){echo '<p><strong>'.($i+1).'TITLE';echo htmlspecialchars(stripslashes($row['title']));echo'</strong><br />Autor: ';echo stripslashes( $row['Author']);echo '<br/> ........ ';echo stripslashes( $row['.....']);}o erro não é nessa linha mas sim na linha acima $query = "select * from books where $searchtype like '%$searchterm%' ";$result = mysql_query($query);a sua query está erradao operador like requer um caracteristica de busca que é simbolizada por % acredito que agora deve funcionar e não se esqueça de adicionar o or die pois ele fundamental para saber qual erro está ocorrendos nas consultas caso haja até mais Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
branquinho
bom gente... não to conseguindo fazer funcionar :S
codigo é
*********testebc.html***************
<html>
<head><title> teste banco de dados </title><head>
<body>
digite sua pesquisa <br/>
<form method="post" action="testebcs.php">
<select name="searchtype">
<option name="author">author</option>
<option name="title">Title</option>
<option name="isbn">Isbn</option>
</select>
<br/>
digite o que você quer : <input type="text" name="searchterm">
<br/>
<input type="submit" value="enviar">
</form>
</body>
</html>
********testebc.php **************** O ERRO DA NA LINHA 30 ( EM NEGRITO)
<html>
<head><title> sasuaiousa </title></head>
<body>
<?php
$searchtype = $_POST['searchtype'];
$searchterm = $_POST['searchterm'];
$searchterm = trim($searchterm);
if ( !$searchtype || !$searchterm ) {
echo 'preencha os campos';
exit;
}
$searchterm = addslashes($searchterm);
$searchtype = addslashes($searchtype);
@ $db = mysql_pconnect ('localhost','root', '');
if(!$db){
echo 'mysql não conseguio se conectar';
exit;
}
mysql_select_db('books');
$query = "select * from books where".$searchtype." like '%"$searchterm"%'";
$result = mysql_query($query);
$num_results = mysql_num_rows($result); ---------------------------- >ACUSA ERRO
echo '<p> number for books found: '.$num_results.'</p>';
for ($i; $i<$num_results; $i++) {
$row = mysql_fetch_array($result);
echo '<p><strong>'.($i+1).' Title:';
echo htmlspecialchar(stripslashes($row['title']));
echo '</strong><br /> Author: ';
echo stripslashes($row['author']);
echo '<br/> price: ';
echo stripslashes($row['price']);
echo '</p>';
}
?>
</body>
</html>
********************************************
ERRO :
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\wamp\www\testebcs.php on line 30
number for books found:
Link para o comentário
Compartilhar em outros sites
12 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.