sanchesjs 0 Denunciar post Postado Outubro 5, 2003 Ola. Alguem poderia me ajudar numa pesquisa no banco de dados ? Tenho o seguinte form: <html> <head> <title> Acessando dados de um banco de Dados</title> </head> <body bgcolor="#FFFFFF"> <font face="arial" size="3" color="red"><b>Pesquisa por titulo: Digite o titulo ou parte do mesmo a ser pesquisado </font></b><br> <form method="post" action="Cap9Lab51.php"> Titulo: <input type="text" name="txtTitulo"> <input type="submit" value="Pesquisar" name="perq"> </form> </body> </html> E o codigo php ----> <?php include "conexao.inc"; $sql = "SELECT categorias.nomecat, livros.codlivro, livros.titulo, livros.autor, livros.preco "; $sql = $sql . "FROM categorias "; $sql = $sql . "INNER JOIN livros "; $sql = $sql . "ON categorias.codcat = livros.codcat "; $sql = $sql . "WHERE livros.titulo LIKE '%txtTitulo%' "; $rs = mysql_query($sql, $conexao) or die ("Nao foi possivel efetuar a consulta"); ?> <html> <head> <title>Acessando dados de um banco de dados MySQL</title> </head> <body> <font face="arial" size="3"><b>LIvros da FS Editora On Line</font></b><br><br> <table border="1" cellpadding="3" cellspacing="0" width="700"> <?php while ($linha = mysql_fetch_array($rs)) { $codlivro = $linha["codlivro"]; $titulo = $linha["titulo"]; $autor = $linha["autor"]; $preco = $linha["preco"]; $nomecat =$linha["nomecat"]; ?> <td valign="top"><?php echo $codlivro; ?></td> <td valign="top"><?php echo $titulo; ?></td> <td valign="top"><?php echo $autor; ?></td> <td valign="top"><?php echo $nomecat; ?></td> <td valign="top"><?php printf ("%.2f", $preco); ?></td> </tr> <?php } mysql_free_result($rs); mysql_close($conexao); ?> </body> <html> Repara na linha vermelha, eu acho que esta errado, ja tentei $sql = $sql . "WHERE livros.titulo LIKE $_POST["txtTitulo"] "; mas nao deu certo tambem, ele retorna uma msg de erro. Compartilhar este post Link para o post Compartilhar em outros sites
rmomogi 0 Denunciar post Postado Outubro 6, 2003 E se você tentar colocar em vez '%txtTitulo% -> %$txTitulo% ? Compartilhar este post Link para o post Compartilhar em outros sites
sanchesjs 0 Denunciar post Postado Outubro 6, 2003 Nao funfa tambem ! Compartilhar este post Link para o post Compartilhar em outros sites
Alisson Rodrigues 3 Denunciar post Postado Outubro 6, 2003 Tá um tanto confuso esse seu select, tenta fazer assim: SELECT titulo from livros where titulo like %$txtTitulo%Outra coisa, eu to vendo esse seu arquivo de conexão e ele tá .inc, tente salvar como conexao.inc.php, senão as pessoas podem abrir esse arquivo e ver o nome do banco de dados, usuário e senha, valew? Compartilhar este post Link para o post Compartilhar em outros sites
sanchesjs 0 Denunciar post Postado Outubro 6, 2003 Valeu pela dica de segurança. mas nao funcionou tbm "SELECT titulo from livros where titulo like %$txtTitulo%"Mesmo assim , Obrigado Compartilhar este post Link para o post Compartilhar em outros sites
sanchesjs 0 Denunciar post Postado Outubro 6, 2003 Fiz o que sugeriu, e retornou 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 '= '%%'' at line 1 Compartilhar este post Link para o post Compartilhar em outros sites
sanchesjs 0 Denunciar post Postado Outubro 6, 2003 Deu certo !!!!!!!! adicionei $txtTitulo = $_POST[txtTitulo]; e $sql = $sql . "WHERE livros.titulo LIKE '%$txtTitulo%' "; Compartilhar este post Link para o post Compartilhar em outros sites