Pb en php avec mysql_num_rows

Fermé
remi - 15 nov. 2007 à 15:12
 Alain42 - 15 nov. 2007 à 16:23
Bonjour,

j'ai un petit pb avec la fonction mysql_mun_rows.
En effet je l'utilise pour savoir si une requète a aboutie à une unique réponse
dans cette requète, je demande si une ligne répond à une paire de variable.
Le pb c'est que si la paire de variable existe dans la base cela me répond qu'il ya 1 entrée, mais si il n'y a pas d'entrée correspondante il ne me répond pas 0 , il ne me répond rien du tout !

Du coup je peux vérifier qu'il y a bien une unique réponse à ma requète mais dans le cas contraire je ne sais pas comment rediriger le visiteur .

Mon code:

$sql='SELECT id FROM postss WHERE id='.$id.' AND time='.$time ;
                  $req=mysql_query($sql);

if (!$req) { die('Requête invalide : ' . mysql_error());}

                  $res=mysql_num_rows($req)or die(mysql_error());
                     echo $res.'<br>';
                  
if($res=='1')
{

//le second script

 }
else {echo "erreur <a href=\"pade d'accueil\">retour</a>"; }


Alors si qqun sait comment faire pour qu'en cas de 0 ligne dans la base de donnée il me réponde tout simplement 0 ;-) , cela m'aiderais bien merci
A voir également:

1 réponse

Salut,

j'ai trouvé ça:

mysql_num_rows ( resource result )

Récupère le nombre de lignes d'un jeu de résultat.

result
La ressource de résultat qui vient d'être évaluée. Ce résultat vient de l'appel à la fonction mysql_query .

Le nombre de lignes dans un jeu de résultats en cas de succès, ou
FALSE si une erreur survient
.


donc si tu n'as pas 0 mais False c'est qu'il y a une erreur qq part.

à la place de:
$sql='SELECT id FROM postss WHERE id='.$id.' AND time='.$time ;
$req=mysql_query($sql);

if (!$req) { die('Requête invalide : ' . mysql_error());}

$res=mysql_num_rows($req)or die(mysql_error());
echo $res.'<br>';


Essayes plutot:

$sql="SELECT id FROM postss WHERE id='".$id."' AND time='".$time."'";
                  $req=mysql_query($sql)or die('Requête invalide : ' . mysql_error());

                  $res=mysql_num_rows($req);
                     echo "nombre trouve: ".$res."<br>";
0