Codice "cerca nel sito" non funziona

di il
2 risposte

Codice "cerca nel sito" non funziona

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 "http://www.gruppoalveo.altervista.or"

Form:

<form method="post" action="cerca.php">
<input type="text" name="testo" id="size_font">&nbsp;<input type="submit" value="Cerca nel sito" id="puls" style="cursor:pointer">
</form>  
File cerca.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>
<?
            }
        }
    }
?>

2 Risposte

  • Re: Codice "cerca nel sito" non funziona

    L'errore te lo indica:

    Parola cercata: akuna
    Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in /membri/gruppoalveo/cerca.php on line 85
    Nessun risultato!

    quindi mi sembra chiaro.
  • Re: Codice "cerca nel sito" non funziona

    gibra ha scritto:


    L'errore te lo indica:

    Parola cercata: akuna
    Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in /membri/gruppoalveo/cerca.php on line 85
    Nessun risultato!

    quindi mi sembra chiaro.
    Allora c'è qualcosa che non mi quadra, non dovrebbe mostrare il Warning, ma solo Nessun risultato
Devi accedere o registrarti per scrivere nel forum
2 risposte