Problème avec mysql_num_rows()

1234 -  
 1234 -
Bonjour,

Quand j'essaye d'utiliser mysql_num_rows() pour vérifier s'il y a quelques chose dans la BDD, j'ai un message d'erreur de ce type:

Warning: mysql_num_rows() expects parameter 1 to be resource, object given in /home/u621129814/public_html/index2.html on line 46


Voici mon code:
              <?php        
    
  $bdd = new PDO('');
    
    // On récupère le nombre total de messages  
     $reponse = $bdd->query('SELECT COUNT(*) AS nb_messages FROM news');  
      while ($donnees = $reponse->fetch())
    $Messages = $donnees['nb_messages']; 
    
    // On récupère les 3 dernières news  
    if(isset($_GET['page'])){  
        $page = mysql_real_escape_string($_GET['page']); // On récupère le numéro de la page indiqué dans l'adresse ( exemple news.php?page=4)  
    } 
    // si non la variable n'existe pas, c'est la première fois qu'on charge la page
    else{  
        $page = 1; // On affiche la page 1, la page par defaut  
    }  
            
                    $reponse = $bdd->query('SELECT * FROM news ORDER BY id DESC LIMIT 0, 10');  
        //si il y a quelque chose
        if(mysql_num_rows($reponse) != 0){
            //on affiche le résultat        
             while ($donnees = $reponse->fetch())
            ?> 
                    


Pouvez vous m'expliquer d'ou vient cette erreur?

Merci d'avance,

2 réponses

Utilisateur anonyme
 
Salut,

Tu mélange PDO et MySQL c'est normal que ça marche pas...

Reponse ici :

https://www.grafikart.fr/forum/topics/140

Pareil pour ton mysql_real_escape_string, faut oublier le mysql t'es en php data object :

https://openclassrooms.com/forum/sujet/pdo-gt-mysqlrealescapestring-19722
0
1234
 
Salut,

Merci pour la réponse.

Si j'ai bien compris, il faut plutôt utiliser rowCount(), mais avec ca non plus, ca ne marche pas.
J'avoue je suis un peu perdu avec le PDO.
0