Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

cairo.ramos

Problema com busca php

Recommended Posts

olá, boa noite,

se coloquei este posto no topico errado, peço desculpas; mas estou com um pequeno problema que não consigo resolver em um arquivo php, acredito que seja a concatenação, que estou utilizando para fazer uma busca no banco de dados mysql, aparentemente o codigo funciona corretamente, mais quando digito a busca no browser, mostra somente a quantidade de registros encontradas e o termo buscado, mais não mostra o titulo e a descrição do titulo. segue codigo abaixo:

<?php
include_once "conexao.php";
$get = strip_tags($_GET['q']);

//$executar = mysql_query("SELECT * FROM 'busca' WHERE titulo LIKE '%".$get."%' OR descricao LIKE '%".$get."%'");
$executar = mysql_query("SELECT * FROM busca WHERE titulo LIKE '%".$get."%' OR descricao LIKE '%".$get."%'");

if(mysql_num_rows($executar) == 0){
echo '<p>Não foram encontrados resultados na sua pesquisa</p>';

}else{
$num = mysql_num_rows($executar);
echo '<p id="res">Sua Pesquisa retornou <b>'.$num.'</b> resultados para o termo: <b>'.$get.'</b></p>';
echo '<ul>';

while (mysql_fetch_object($executar)){
?>
<li>
<span>
<?php echo $res -> titulo; ?>
</span>
<p>
<?php echo $res -> descricao;?>
</p>
</li>
<?php
}
echo '</ul>';
}
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faltou atribuir o retorno de mysql_fetch_object a $res

 

Faça assim:

 

while ($res = mysql_fetch_object($executar)){

 

Outras observações:

 

1. Você chama mysql_num_rows duas vezes. Chame só uma vez, atribuindo o valor a uma variável que também será usada no if.

 

2. Seu código está vulnerável a SQL Injection. Veja: http://rberaldo.com.br/seguranca-em-sistemas-de-login-protecao-contra-sql-injection/

 

3. funções mysql_* estão obsoletas desde o PHP 5.5 e serão removidas do PHP em breve. Prefira usar MySQLi ou PDO. Veja mais aqui: http://www.ultimatephp.com.br/php-por-que-nao-utilizar-funcoes-mysql

 

Essas e outras dicas de PHP: http://www.ultimatephp.com.br/guia/

 

 

Tópico movido:

Dúvidas Gerais :seta: PHP

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.