Ir para conteúdo

POWERED BY:

Arquivado

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

red_sonja

busca

Recommended Posts

DAÍ MOÇADA!!!!Eu posto tanto aqui que já me sinto íntima hahaha :rolleyes: o meu mais novo problema é:tenho uma tabela com um campo que armazena palavras-chave. Pode ter de uma a várias palavras armazenadas no mesmo registro. E preciso fazer uma busca disso, retornando os resultados com todos os valores, assim:1 - o cara pesquisa por alguma palavra2 - a pesquisa retorna: nome da imagem, palavras chave e caminho(os três campos do meu banco)Os resultados podem ser um embaixo do outro mesmo, não precisa fazer todos aqueles rodeios que o pessoal pede aki... hehe. Eu fiz o código até essa parte, alguém me ajuda a continuar ele?

$pchave = $_POST[pchave];$query = mysql_query("SELECT * FROM imagens where pchave = '$pchave'");if(mysql_num_rows($query) < 1) die("Não houve resultados.");

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opaaaaa!!!

Blzzz?

Vamos lá

 

PHP [/tr][tr]

$pchave = $_POST['pchave'];

$query = mysql_query("SELECT * FROM imagens where pchave = '$pchave'");

if(mysql_num_rows($query) > 0){

//repare que acima mudei o sinal < para >

//die("Não houve resultados.");

//comentei pq faria de outra maneira.

while ($registro = mysql_fetch_array($query, MYSQL_NUM))){

echo registro[0] . " " . $registro[1] . " " . $registro[2] . "<br>";

}

} else {

echo "Nenhum registro encontrado";

} //fecha if la de cima.

[/tr]

 

se possível fala quais os campos da sua tabela acho q assim ficaria mais facil de entender.

 

linha 1 : Pega o posta e armazena na variavel

linha 2 : faz a query

linha 3 : verifica se foi encontrado algum registro ou seja a query retornou algo maior que 0

linha 4 : comentário

linha 5 : comentario

linha 6 : comentario

linha 7 : faz o loop pra mostrar os registros veja esse link http://br.php.net/manual/pt_BR/function.my...fetch-array.php

linha 8 : mostra registros

linha 9 : fecha loop

linha 11 : se retornou 0 registros na query entao mostra a menssagem que num retornou nada

 

Espero ter ajudado

Compartilhar este post


Link para o post
Compartilhar em outros sites

OS CAMPOS DA MINHA TABELA SÃONOME / PCHAVE / CAMINHOdeu um erro no seu cod...

Parse error: parse error, unexpected '[', expecting ',' or ';' in /home/webcindario/subconsciousdb/busca.php on line 13

q q eu faço? :blink:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Desculpe.

repare que esqueci do sinal de $ em uma variavel

troque a linha

echo registro[0] . " " . $registro[1] . " " . $registro[2] . "<br>";
por

echo $registro['NOME'] . " " . $registro['PCHAVE'] . " " . $registro['CAMINHO'] . "<br>";

Também troque a linha

while ($registro = mysql_fetch_array($query, MYSQL_NUM))){
por

while ($registro = mysql_fetch_array($query, MYSQL_ASSOC))){

é o MYSQL_ASSOC que deixa você colocar na parte onde vai aparecer os registros o nome do campo da sua tabela.

 

Código inteiro: arrumado

$pchave = $_POST['pchave'];$query = mysql_query("SELECT * FROM imagens where pchave = '$pchave'");if(mysql_num_rows($query) > 0){//repare que acima mudei o sinal < para > //die("Não houve resultados.");//comentei pq faria de outra maneira.while ($registro = mysql_fetch_array($query, MYSQL_ASSOC))){echo $registro['NOME'] . " " . $registro['PCHAVE'] . " " . $registro['CAMINHO'] . "<br>";}} else {echo "Nenhum registro encontrado";} //fecha if la de cima.

ve ai se da certo

abraços http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

http://forum.imasters.com.br/public/style_emoticons/default/clap.gif http://forum.imasters.com.br/public/style_emoticons/default/clap.gif http://forum.imasters.com.br/public/style_emoticons/default/clap.gif DEU SIM! MUITO OBRIGADA, AJUDOU BASTANTE! Eu até tô pensando em postar aki os cod qdo terminar...

 

é q eu tenho muitas imagens aki, então pra organizar eu criei um sistema que armazena o nome, palavras chave e caminho num bd, e agora estava montando a busca...

 

muito bom pq comecei a aprender php há 3 dias e já fiz o que eu precisava! agora é só alegria!!! http://forum.imasters.com.br/public/style_emoticons/default/joia.gif http://forum.imasters.com.br/public/style_emoticons/default/joia.gif http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

xi.... tava testando a busca de volta...pq q num dá certo de vez em qdo? tipo, eu procuro uma palavra que está cadastrada, ele diz que não há resultados.. e isso repetidas vezes... o q será q pode ser? :mellow: lembrando que o campo palavra chave tem mais de uma palavra registrada...

Compartilhar este post


Link para o post
Compartilhar em outros sites

http://forum.imasters.com.br/public/style_emoticons/default/clap.gif http://forum.imasters.com.br/public/style_emoticons/default/clap.gif http://forum.imasters.com.br/public/style_emoticons/default/clap.gif DEU SIM! MUITO OBRIGADA, AJUDOU BASTANTE! Eu até tô pensando em postar aki os cod qdo terminar...é q eu tenho muitas imagens aki, então pra organizar eu criei um sistema que armazena o nome, palavras chave e caminho num bd, e agora estava montando a busca...muito bom pq comecei a aprender php há 3 dias e já fiz o que eu precisava! agora é só alegria!!! http://forum.imasters.com.br/public/style_emoticons/default/joia.gif http://forum.imasters.com.br/public/style_emoticons/default/joia.gif http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

É isso ai agora é bola pra frente... hehehe :D :D :D Qualquer coisa é só dar um toque.Abraços http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

esqueci de dizer que o campo palavra chave tem mais que uma só palavra... tipo para uma imagem duma mulher com uma criança no colo eu tenho as palavrasmulher criança famíliaetc...aíh qdo eu faço a busca num tá retornando... só retorna o q tiver uma só palavra cadastrada.. aíh num dá certo neh.. me ajuda aih pls :rolleyes:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Neste caso não é que está dando erro, é que não retorna nada mesmo.

 

Para arrumar isso mude a cláusula SQL para:

 

SELECT * FROM imagens WHERE pchave LIKE '%". $pchave ." ' "

Ve se isso da certo.

Abraços.

Compartilhar este post


Link para o post
Compartilhar em outros sites

o código ta assim:

$pchave = $_POST['pchave'];$query = ("SELECT * FROM imagens WHERE pchave LIKE '%$pchave%'");if(mysql_num_rows($query) > 0){//repare que acima mudei o sinal < para > //die("Não houve resultados.");//comentei pq faria de outra maneira.while ($registro = mysql_fetch_array($query, MYSQL_ASSOC)){echo $registro['nome'] . " " . $registro['pchave'] . " " . $registro['caminho'] . "<br>";}} else {echo "Nenhum registro encontrado";} //fecha if la de cima.

mas aparece o erro

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/webcindario/subconsciousdb/busca.php on line 9Nenhum registro encontrado

:wacko:

Compartilhar este post


Link para o post
Compartilhar em outros sites

erro novamente, agora na linha do if

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/webcindario/subconsciousdb/busca.php on line 8Nenhum registro encontrado

:unsure:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opaaa

ta faltando uma coisa.............................

 

 

Executa a query assim:

 

$query = ("SELECT * FROM imagens WHERE pchave LIKE '%$pchave%'");$query = mysql_query($query);

Compartilhar este post


Link para o post
Compartilhar em outros sites

:wacko: :wacko: agora tá aparecendo todas as do banco...

e a propósito... tenho + duas perguntas

1 - qdo eu kero usar duas palavras chave na busca como faço?

2 - nos resultados, tem como eu inserir no campo "caminho" alguma coisa que faça o texto(que na verdade é um link) carregar o arquivo?

 

aproveitei pra perguntar td antes que você me bata de raiva hheheheh http://forum.imasters.com.br/public/style_emoticons/default/blush.gif

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.