Geleiaskt Postado Setembro 28, 2004 Denunciar Share Postado Setembro 28, 2004 Aê galera, o problema é esse:Eu estou tentando fazer uma busca simples no BD, vinda de um form.O usuário digita uma palavra no formulário, e eu queria que o resultado mostra-se na tela apenas as notícias cujo contenham a palavra digitada.O código é esse abaixo, não da erro de sintaxe, mas também não funciona.. :S<?php if(isset($palavra) and ($palavra != "")) { include('conexao.php'); $conexao = mysql_connect($local, $usuariobd, $senha); $db = mysql_select_db($database); $palavra1 = str_replace(" ", "%", $palavra); $query = mysql_query("SELECT * FROM noticias WHERE msg LIKE '%".$palavra1."%' ORDER BY data ASC"); if(!$resultado){ die("Não foi possivel realizar a consulta!!"); } echo "Sua busca retornou <font color=FD2931><b>".$resultado."</b></font> resultados.<br>"; while($linha = mysql_fetch_array($resultado)) { // Gera o Loop com os resultados $id_noticia = $linha['id_noticia']; $titulo = $linha['titulo']; $msg = $linha['msg']; print("<hr color='#CCCCCC'>\n"); $palavrachave = str_replace($palavra1, "<b>".$palavra1."</b>", $msg); print($palavrachave . "<br>\n"); print('<div align="right"><a class="links" href="index.php?noticia=' . $id . '&titulo=' . $titulo . '">»» Ver notícia</a></div>'); }}else{print("O campo palavra está vazio!!<br><a href='javascript:history.go(-1)'>Voltar</a>");}?> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Woody Postado Setembro 28, 2004 Denunciar Share Postado Setembro 28, 2004 Amigão,Troca isso aqui:$query = mysql_query("SELECT * FROM noticias WHERE msg LIKE '%".$palavra1."%' ORDER BY data ASC"); Por isso: $resultado = mysql_query("SELECT * FROM noticias WHERE msg LIKE '%".$palavra1."%' ORDER BY data ASC"); Seguinte:quando você utiliza a função mysql_query(), ela te retorna o ResourceID(trocando em miúdos, a resposta da query) e é através dele que você faz a leitura da resposta do DB.Entendeu???Até + então.... testa e posta aí pra NÓIS... Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Geleiaskt
Aê galera, o problema é esse:
Eu estou tentando fazer uma busca simples no BD, vinda de um form.
O usuário digita uma palavra no formulário, e eu queria que o resultado mostra-se na tela apenas as notícias cujo contenham a palavra digitada.
O código é esse abaixo, não da erro de sintaxe, mas também não funciona.. :S
<?php
if(isset($palavra) and ($palavra != "")) {
include('conexao.php');
$conexao = mysql_connect($local, $usuariobd, $senha);
$db = mysql_select_db($database);
$palavra1 = str_replace(" ", "%", $palavra);
$query = mysql_query("SELECT * FROM noticias WHERE msg LIKE '%".$palavra1."%' ORDER BY data ASC");
if(!$resultado){
die("Não foi possivel realizar a consulta!!");
}
echo "Sua busca retornou <font color=FD2931><b>".$resultado."</b></font> resultados.<br>";
while($linha = mysql_fetch_array($resultado)) { // Gera o Loop com os resultados
$id_noticia = $linha['id_noticia'];
$titulo = $linha['titulo'];
$msg = $linha['msg'];
print("<hr color='#CCCCCC'>\n");
$palavrachave = str_replace($palavra1, "<b>".$palavra1."</b>", $msg);
print($palavrachave . "<br>\n");
print('<div align="right"><a class="links" href="index.php?noticia=' . $id . '&titulo=' . $titulo . '">»» Ver notícia</a></div>');
}
}else{
print("O campo palavra está vazio!!<br><a href='javascript:history.go(-1)'>Voltar</a>");
}
?>
Link para o comentário
Compartilhar em outros sites
1 resposta 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.