Affichage résultat COUNT

Affichage résultat COUNT - PHP - Programmation

Marsh Posté le 10-12-2008 à 19:49:45    

Bonjour,
 
Voila j'ai un petit souci avec l'affichage en php d'une requête SQL qui affiche le nombre d'entré dans ma table en gros.
Mon souci est que le résultat est nul alors que ma table est rempli ...
Voici mon code :
 

Code :
  1. $nb = mysql_query("SELECT COUNT(DISTINCT Nom) FROM utilisateur" ); // On compte le nombre de résultat
  2. $resultats = mysql_query($nb);
  3.   if ($resultats > 0) { ?> <!-- Si résultat > 0 -->
  4.      <p>Il y a <?php echo $resultats ?> utilisateur(s).</p> // Affichage nombre d'utilisateurs dans la BDD
  5.                         }
  6.   if ($resultats == 0) { ?> <!-- Si résultat vaut 0 -->
  7.      <p>Il n'y a pas d'utilisateurs, d&eacute;sol&eacute;!</p>
  8.   <?php } ?>


 
Si quelqu'un a une idée !
Merci d'avance

Reply

Marsh Posté le 10-12-2008 à 19:49:45   

Reply

Marsh Posté le 10-12-2008 à 19:55:37    

sauf que $resultats est une ressource mysql donc pas affichable directement, il faut utiliser les fonctions de traitement de résultats :
http://fr.php.net/manual/fr/ref.mysql.php

Reply

Marsh Posté le 10-12-2008 à 20:57:18    

Merci de ta réponse mais quelle fonction je doit utiliser parce que j'avais testé avec mysql_fetch_array et mysql_result et c'était pas bon !

Reply

Marsh Posté le 10-12-2008 à 21:04:43    

C'est bon j'ai trouvé avec mysql_fetch_array !!!
 

Code :
  1. $nb = mysql_query("SELECT COUNT(DISTINCT Nom) AS Nb FROM utilisateur" ); // On compte le nombre de résultat
  2. $resultats = mysql_fetch_array($nb);
  3. if ($resultats > 0) { ?> // Si résultat > 0  
  4. <p>Il y a <?php echo $resultats['Nb']; ?> utilisateur(s).</p> //Affichage nombre d'utilisateurs  
  5.                      
  6. else { ?> // Si résultat vaut 0  
  7. <p>Il n'y a pas d'utilisateurs, d&eacute;sol&eacute;!</p>
  8. <?php }
  9. mysql_close($db);?>


 
Merci


Message édité par ysolal le 10-12-2008 à 21:07:02
Reply

Marsh Posté le 11-12-2008 à 22:40:04    

Code :
  1. class TEST
  2. {
  3.   public function get_nb_utilisateurs()
  4.   {
  5.     $nb = mysql_query("SELECT COUNT(DISTINCT Nom) AS Nb FROM utilisateur" ); // On compte le nombre de résultat
  6.     if ($resultats = mysql_fetch_object($nb))
  7.       return $resultats->Nb;
  8.     else
  9.       return "erreur";
  10.   }
  11. }
 

utilises mysql_fetch_object() c'est plus mieux :)
tu mets ta fonction dans une class et tu ne fais que ta partie traitement (pas d'echo).

Code :
  1. $test = new TEST();  // tu déclare un nouvel objet de class TEST
  2. echo $test->get_nb_utilisateurs(); // t'appelles la fonction que tu veux dans ton objet créé précédemment


Message édité par Manticus le 11-12-2008 à 22:52:34

---------------
Mes ventes ici
Reply

Marsh Posté le 12-12-2008 à 21:33:20    

Merci bcp je vais faire comme tu dit  :wahoo:  
C'est vrai que c'est plus propre que d'avoir des echo partout dans le html, mais bon c'est plus technique aussi  :ouch:  
 
En tout cas merci je vais m'inspirer de celle que t'as écrite pour faire les autres !!

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed