red_sonja 0 Denunciar post Postado Outubro 15, 2004 bom pessoal agora a coisa tá começando a dar certo... :D o código que estou usando até agora é: $pchave = $_POST['pchave'];$nome = $_POST['pchave'];$query = ("SELECT * FROM imagens WHERE pchave LIKE '%$pchave%' OR nome LIKE '%$nome%'");$query = mysql_query($query);if(mysql_num_rows($query) > 0){while ($registro = mysql_fetch_array($query, MYSQL_ASSOC)){echo $registro['nome'] . " " . $registro['pchave'] . " " . $registro['caminho'] . "<br>";}} else {echo "Não há resultados para esssa pesquisa na base de dados.No donut for you, baby.";}tá ficando bom... só falta o seguinte: o campo pchave na db pode armazenar várias palavras. Um exemplo é:uma foto de uma mulher com uma menina no colo tem as palavras chave"mulher" "menina" "família" etc...quando eu quiser fazer uma busca por mais de uma palavra, por exemplo mulher famíliaele não retorna resultados... alguém me ajuda?Abraços - Um obrigada especial ao rodurma que me ajudou com o código acimavcs são muito legais http://forum.imasters.com.br/public/style_emoticons/default/clap.gif Compartilhar este post Link para o post Compartilhar em outros sites
rodurma 0 Denunciar post Postado Outubro 17, 2004 Ae testei aqui e deu tudo certo. Olha o código: PHP [/tr][tr]<? $base = mysql_connect("localhost","usuario","senha"); mysql_select_db("test", $base); $pchave = $_POST['pchave']; $dividido = explode(" ", $pchave); $num_de_pchave = count($dividido); //Agora montado o sql if ($num_de_pchave < 2){ $sql = "SELECT * FROM imagens WHERE pchave LIKE '%$pchave%'"; } else { $sql = "SELECT * FROM imagens WHERE "; for ($i=0;$i<$num_de_pchave;$i++){ if (($i+1) < $num_de_pchave){ $sql .= "pchave LIKE '%$dividido[$i]%' OR "; } else { $sql .= "pchave LIKE '%$dividido[$i]%'"; } } } $qry = mysql_query($sql, $base); $num_linhas = mysql_num_rows($qry); if ($num_linhas <1){ echo "Nenhum registro retornado"; } else { while($registro = mysql_fetch_array($qry, MYSQL_ASSOC)){ echo $registro['nome'] . " -- " . $registro['pchave'] . " -- " . $registro['caminho'] . "<br>"; } } //erro estava aqui pois não tinha fechado o if acima e agora fechei hehe ?> [/tr] O erro que estava dando era que não tinha fechado o if Agora é só colocar as palavras chaves no campo da busca que ele monta o SQL dinâmicamente. Abraços Compartilhar este post Link para o post Compartilhar em outros sites