Php : comment fonctionne mysql_num_rows

Voila le probleme, j'ai crée un forum, mais le seul truc qui ne fonctionne pas, c'est quand je veux mettre à jour le nombre de maeesage d'un post à jour.

J'utilise la fonction mysql_num_rows, mais j'ai le message d'erreur suivant :

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /var/www/free.fr/e/6/slyvore/forum_post.php on line 22

le code d'utilisation est le suivant :

$rq = mysql_query("SELECT * FROM forum WHERE (id='$id)|(id_assoc='$id')"); // ca marche
$nb = mysql_num_rows($rq) // c'est la que ca marche pas
$rq = "UPDATE forum SET nb_rep='$nb',dernier_p='$nom_perso',dernier_d=NOW() WHERE id='$id' "; // ca marche aussi, mais ca n'update pas le nb
$rv = mysql_query($rq)

Voila, j'espere que quelqu'un pourra m'aider, c'est une erreur que j'ai souvent

7 réponses

  1. est tu vraiment sur que ta requete est valide ?
    essaye ca:
    $rq = mysql_query("SELECT * ... ") or die(mysql_error());

    ainsi tu sera sur que ta requete est valide, car la fonction mysql_query ne renvoi pas d'erreur s'il y en a une.
    1
    1. pas mal le site, mais je ne comprend pas ce que tu veux dire

      Globalement, je fait un SELECT *
      Apres, un num_row du resulat
      et apres j'update en reutilisant la meme variable que celle de SELECT, donc normalement ca n'as rien a voir... non?
      0
      1. c'est bon, j'ai trouvé

        en fait, y manquait juste un ' dans

        $rq = mysql_query("SELECT * FROM forum WHERE (id='$id)|(id_assoc='$id')"); // ca marche

        juste apres id

        merci quand meme^^
        0
        1. Non je me suis trompé, :((
          Si tu fais:
          $qqch=mysql_conect(blabla...)

          $rq=mysql_query("SELECT blabla..", $qqch)
          0
          1. je vois pas ce que tu veux dire, j'ai bien vu qq part qu'on pouvait ecrire ,$connect mais j'ai pas trop compris le but
            0
            1. J'ai rien dit alors
              T'as déjà résolu ...
              0