Bom dia, pessoal Preciso pegar um texto ou frase passado por um campo "text" e fazer uma pesquisa na qual retornará e exibirá imagens correspondentes às palavras digitadas. Estou usando "explode" para armazenar as palavras digitas num array e posteriormente realizar a pesquisa porém não acontece nada. Poderiam me ajudar?OBS. A tabela no banco chama-se "associacao" e possui os campos "id", "palavra", "imagem".
<?php
include "conecta_db.php";
?>
<html>
<head></head>
<body>
<div>
<h1> Teste com a função explode</h1>
<form action="explode.php" method="POST">
<div>
<label>Digite o texto:</label><br>
<input type="text" name="txtMensagem">
</div>
<input class="bt" type="submit" value="Enviar">
</form>
<div>
<?php
if($_POST){
$texto = $_POST['txtMensagem'];
$palavras = explode(" ", $texto);
//Usando o comando "foreach" concateno os dados de cada posição deste array
//afim de criar a condição que será passada para o comando SQL
//Variável que guardará a condição
$cond = null;
foreach($palavras as $ids){
$cond = $ids.','; //coloco uma vírgula após cada posição lida
}
//Pegamos o tamanho da variável "$cond"
$size = strlen($cond);
//Retiro a vírgula qu eficou no final da string e tenho a condição completa
$condicao = substr($cond,0,$size-1);
//A query fica assim:
$sql=mysql_query("select * from associacao where palavra in($condicao)");
while($row = mysql_fetch_array($sql)) {
// Escreve o valor da coluna imagem (que está no array $row)
echo $row['imagem'] "<br />";
}
}
?>
</div>
</div>
</body>
</html>