Je n'arrive pas a tester si une table sql est vide

Résolu
kakesinfo Messages postés 36 Statut Membre -  
kakesinfo Messages postés 36 Statut Membre -
Voici le code que j'ai dev. pour savoir si la table dans la db est totalement vide:

$sql = "SELECT * FROM messages";
$req = mysql_query($sql) or die(mysql_error());
$data3 = mysql_fetch_assoc($req);
if(empty($data3)){
echo "<text>Aucun message trouver.</text>";			
}


Merci de me répondre. PS: $data3 et le troisième $data :)
Et redonder moi méme si vous nette pas sure de votre reponse

1 réponse

  1. dan-b Messages postés 86 Statut Membre 7
     
    bonjour,

    sinon il y a la fonction mysql_num_rows()
    $req = mysql_query($sql);

    if (mysql_num_rows($req) == 0) {
    echo "Aucune ligne trouvée, rien à afficher.";
    }
    0
    1. kakesinfo Messages postés 36 Statut Membre
       
      J'ai ecrit sa et sa marche pas:
      $sql = "SELECT * FROM messages";
      $req = mysql_query($sql);
      if(mysql_num_rows($req) == 0){
           echo "<text>Aucun message trouver.</text>";   
      }
      


      Pas d'autre idée ??
      0
    2. dan-b Messages postés 86 Statut Membre 7
       
      ça ne marche pas, ce n'est pas très précis :)
      bon déjà, vérifier que la requête passe et après afficher le nombre de lignes

      $sql = "SELECT * FROM messages";
      $req = mysql_query($sql);
      if ($req == false){
          echo 'Requête invalide : ' . mysql_error();
      }
      else {
               echo mysql_num_rows($req) . " résultat(s)";
      }
      


      ceci dit ces fonctions mysql sont obsolètes depuis php 5.5. https://www.php.net/manual/en/function.mysql-num-rows.php
      0
    3. kakesinfo Messages postés 36 Statut Membre
       
      J'ai écrit sa et sa marche pas !? Sa affiche rien ?? Je trouve sa bizzard :)
      $sql = "SELECT * FROM messages";
      $req = mysql_query($sql);
      if($req == false){
      	echo "<text>Aucun message trouver.</text>";
      	echo "<text>Req invalide.</text>".mysql_error();				
      }else{
      	echo mysql_num_rows($req)."résultat(s)";
      }
      
      0