Ir para conteúdo

POWERED BY:

Arquivado

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

php_master

Erro em sis de busca

Recommended Posts

Boa noite estou incrementando um sistema de busca no qual ele seria buscado da seguite forma.

O digitaria o nome do restaurante ou comida e escolheria dentro de um select o tipo de restaurante como fast-food, oriental etc.

 

Segue codigo da busca.

 

 $sql = mysql_query("SELECT * FROM $tb4 where palavra_chave LIKE '%".$busca."%' OR nome_restaurante LIKE '%".$busca."%' AND tipo LIKE '%".$categoria."%'") or die (mysql_error());

 

Essa busca me retorna assim.

 

Se deixa o input em branco e deixar elecionado qualquer item do select ele me retorna todos os dados cadastrados.

Se eu digito algum item que consta no banco como "Sucos" + select "Restaurante" ele me retorna os restaurantes que serem sucos. Porem esta dando um erro se eu digito algum item que consa no banco e seleciono algum tipo de restaurante que nao tem tal item ele me retorna tambe, ou seja, nao esta uma busca correta.

Como eu fazeria pra listar o mais certo possivel.

 

Outra coisa.

 

Tenho o id que vem via GET

Exemplo: mouse

 

Precisava de algo como

$ID = "Mouse&Pc&Monitor";

 

Dentro desse like "LIKE '%".$ID."%'" que seria LIKE '%".Mouse&PC&Monitor."%'...é possivel ou seria de outra forma.

 

Abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá!

 

Tenta trazer por parâmetro o tipo

$categoria = $_GET['categoria'];

E tente mudar o LIKE do campo tipo por:

$sql = mysql_query("SELECT * FROM $tb4 where palavra_chave LIKE '%".$busca."%' OR nome_restaurante LIKE '%".$busca."%' AND tipo = '$categoria'") or die (mysql_error());

Bom espero que ajude!

Compartilhar este post


Link para o post
Compartilhar em outros sites

O problema é o uso de OR e AND sem tomar os devidos cuidados

 

O AND só trará resultados se todas as condições fores verdadeiras o OR basta que uma seja verdadeira

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.