Afficher le nbre d'enregistrement

ramzi -  
macgawel Messages postés 676 Statut Membre -
Bonjour,
j'ai mis cette requete qui fait le compte d'enregistrement dans une bdd
<?
$requete='SELECT ID, COUNT(*) FROM etud GROUP BY ID;
mysql_connect($serveur,$user,$pass) or die ("la connexion ne peut pas se faire");
mysql_select_db($bdd) or die ("impossible de se connecter");
$resultat=mysql_query($requete) or die (mysql_error());
while ($retour = mysql_fetch_array($resultat)) {
echo "Il y a ".$retour[1]." etudt en ".$retour[0]."<br />";
}
?>
alors que je veux afficher le nombre totale d'enregistrement par exemple il ya 50 enregistrement dans la table etud
Merci
Configuration: Windows XP
Opera 9.26

3 réponses

  1. cheese42 Messages postés 890 Statut Membre 120
     
    slt,

    ou tu veux le montrer:::::::::::
    <div align="center">
    <?php echo $id."";
    ?>enregistrements.
    </div>

    voila tout en sachant que tu as un" id" dans ta bdd.............
    0
  2. macgawel Messages postés 676 Statut Membre 89
     
    Re.

    Si c'est le nombre total d'enregistrements que tu veux, il ne faut pas faire de GROUP BY.

    $requete='SELECT COUNT(*) FROM etud';
    mysql_connect($serveur,$user,$pass) or die ("la connexion ne peut pas se faire");
    mysql_select_db($bdd) or die ("impossible de se connecter");
    $resultat=mysql_query($requete) or die (mysql_error());
    echo "Il y a ".mysql_num_rows($resultat)." lignes.<br />";
    0
  3. ramzi
     
    j'ai fait la requete mais qlq soit le nombre de mes enregistrements il m'affiche que j'ai seulement une ligne donc ou il existe le probleme svp.
    0
    1. macgawel Messages postés 676 Statut Membre 89
       
      Ouch !
      Fatigué, moi...


      Ta requête te renvoie une ligne, contenant le nombre de lignes de la table (COUNT(*))
      Ensuite, le mysql_num_rows renvoie le nombre de lignes retournées par la requête. Donc, une seule !

      Deux solutions. N'étant pas un expert (et ayant besoin de vacances :-o ) je te laisse le soin de tester laquelle est la plus rapide - /a priori/ c'est la première solution...

      - Tu gardes la requête tel que, et tu fais :
      echo "Il y a ".mysql_result($resultat, 0)." lignes.<br />";

      Qui te renvoie le contenu de la première colonne de la première ligne de la requête (donc le COUNT(*))

      - Tu gardes le echo, et à ce moment là, tu fais une requête qui retourne toutes les lignes de la table
      $requete='SELECT * FROM etud';
      0