2009-05-07 10 views
0

Le code suivant continue d'être affiché même s'il y a des entrées dans ma base de données et je ne comprends pas pourquoi. Est-ce que je manque quelque chose? Je ne suis pas sûr si cela a du sens, mais l'aide serait géniale. :)Le code est affiché même avec des entrées dans la base de données

if($numrows==0) 
{ 
echo"<h3>Results</h3>"; 
echo"<p>Sorry, your search: &quot;".$escaped."&quot; returned zero results</p>"; 
} 
+2

Vraisemblablement, $ numrows vaut zéro avant d'arriver ici. Peut-être devriez-vous montrer comment $ numrows obtient sa valeur? – bdonlan

Répondre

5

Si le code que vous rencontrez un problème avec est le même que celui cité dans your previous question ... le problème est ici:

$numresults=mysql_query($query); 
$numrows=mysql_num_rows(numresults); 

vous manque un $ avant numresults sur la deuxième ligne.

2

Comment obtenez-vous $ numrows? Cela peut être l'erreur.

Ce que je fais habituellement est:

if($numrows > 0){ 

    // Code 

}else{ 
    echo"<h3>Results</h3>"; 
    echo"<p>Sorry, your search: "".$escaped."" returned zero results</p>"; 
} 
+1

Oh. Je vous remercie. Je voudrais juste mettre ma requête où vous avez // Code droit? Parce que quand je fais cela, il affiche simplement l'instruction else. :/ – Holly

+1

pouvez-vous coller votre requête et comment vous obtenez la valeur de $ numrows? – fesja

+0

Le code // est ce que vous voulez faire quand vous avez des lignes. Vous devez d'abord interroger la base de données, afin d'obtenir des nombres. – barfoon

2

Essayez:

echo "'$numrows'"; 

directement au-dessus du instruction if. Si la sortie n'est pas '0', le problème est de savoir comment vous affectez 0 à $ numrows.

+0

Le bloc if serait actuellement exécuté si $ numrows était nul (parce que l'opérateur == ne compare pas les types), mais ce ne serait pas le cas si elle changeait if ($ numrows === 0) –

+0

Thaks John. Tu as raison. – Babiker

Questions connexes