Ho trovato in rete un semplice codice per cercare parole nel mio sito che usa MySQL, ho creato le tabelle ecc. ma se inserisco la parola da cercare mi risponde che non c'è, anche se nel sito esiste e mi da errore, vedi Sito
Form:
Codice PHP:
<form method="post" action="cerca.php">
<input type="text" name="testo" id="size_font"> <input type="submit" value="Cerca nel sito" id="puls" style="cursor:pointer">
</form>
File cerca.php
Codice PHP:
<?php
//Richiama i parametri di connessione al db
require_once "connessione.php";
$testo = htmlspecialchars($_POST["testo"]);
Parola cercata:
if (isset($testo) == false || $testo == " ")
{
echo "<span style=\"color:#008000;\">Nessun risultato</span>";
}
else
{
echo "<span style=\"color:#008000; font-family:verdana; font-style:italic;\">$testo</span>";
}
if (isset($testo) == false || $testo == "")
{
echo "<span style=\"color:#008000; font-family:verdana; font-style:italic;\">???</span>";
?>
<p style="color:#ff0000;">Non hai inserito la parola da cercare!</p>
<?
}
else
{
$arr_txt = explode(" ", $testo);
$sql = "SELECT * FROM cerca_parole WHERE ";
for ($i=0; $i<count($arr_txt); $i++)
{
if ($i > 0)
{
$sql .= " AND ";
}
$sql .= "(titolo LIKE '%" . $arr_txt[$i] . "%' OR descrizione LIKE '%" . $arr_txt[$i] . "%')";
}
$sql .= " AND cat_id = art_categoria ORDER BY art_timestamp DESC";
$query = mysql_query($sql, $cn);
$quanti = mysql_num_rows($query);
if ($quanti == 0)
{
?>
<p style="color:#ff0000;">Nessun risultato!</p>
<?
}
else
{
for($x=0; $x<$quanti; $x++)
{
$rs = mysql_fetch_row($query);
$id = $rs[0];
$titolo = $rs[1];
?>
<p><a href="leggi.php?id=<?echo $id?>"><?echo $titolo?></a></p>
<?
}
}
}
?>