if ($result and !mysql_num_rows($result)) {
questo controllo non e' corretto.
Se $result fosse FALSE avresti il DIE che ti ferma prima. Se arrivi fin li e' TRUE per forza.
Mysql_num_rows() rende il numero delle righe.
Meglio se fai:
if (mysql_num_rows($result) == 0 ) {
ti conviene anche stampare la query per vedere cosa viene valorizzato dalle variabili. ISSET() ti rende true anche se la variabile fosse vuota. Userei !empty() al posto di isset().
echo $sql;
Da ultimo ma non per ultimo, occhio alle limitazioni dell'indice FULLTEXT ... parole troppo corte o nell'elenco di quelle escluse perche troppo frequenti.

Rispondi quotando