Prebleme select count

Résolu
Bonjour,
je souhaite compter le nombre d'entrée que j'ai dans une table.
Pour ce faire je procède comme suit:
try
{
    $bdd = new PDO('mysql:host=localhost;dbname=test', 'root', '');
}
catch(Exception $e)
{
        die('Erreur : '. $e->getMessage());
}

$req = $bdd->query('SELECT COUNT id FROM billet');
$donnees = $req1->fetch();
echo $donnees1;
$req->closeCursor();


Ce qui me renvoie cette erreur:
Fatal error: Call to a member function fetch() on a non-object in /Users/az/Sites/blog/script/testblog.php on line 38

La ligne 38 étant:
$donnees = $req1->fetch();

Je tiens à préciser que le champ id existe dans ma table.
Merci à vous.

4 réponses

  1. Si j'ai bien lu ton message, mais un peu trop rapidement, j'avais oublier de mettre entre parenthèse le id.
    Maintenant, ça marche merci beaucoup le père
    0
    1. oui pardon, j'ai fait une faute de copier coller en fait mon code est le suivant:

      try
      {
          $bdd = new PDO('mysql:host=localhost;dbname=test', 'root', '');
      }
      catch(Exception $e)
      {
              die('Erreur : '. $e->getMessage());
      }
      
      $req = $bdd->query('SELECT COUNT id FROM billet');
      $donnees = $req->fetch();
      echo $donnees;
      $req->closeCursor();
      


      Ce qui me donne évidement toujours la même erreur
      0
      1. Tu n'as pas lu mon message ?
        COUNT(id) et non pas COUNT id

        echo $donnees[0]; et non pas echo $donnees;
        0
    2. Bonjour

      Ta requête est incorrecte, l'utilisation de son résultat aussi, et tu changes les noms de tes variables d'une ligne à l'autre, il n'y a aucune cohérence :

      $req = $bdd->query('SELECT COUNT (id) FROM billet');
      $donnees = $req->fetch();
      echo $donnees[0];
      1
      1. ok ca donne un tableau...je savais pas
        0
      2. En général, un SELECT sélectionne plusieurs champs : chaque ligne de résultat est un tableau dont les éléments sont les divers champs.
        0
      3. Au passage : il ne faut pas d'espace entre COUNT et (
        0
    3. salut essaye sans avoir testé moi même :

      $req = $bdd->query('SELECT COUNT id FROM billet');
      $donnees = $req->fetch();
      echo $donnees;
      
      $req->closeCursor();
      
      
      

      je sui pas expert en php
      0
      1. tu assigne la valeur d'un variable + une fonction a une nouvelle...;tu peu pas changer le nom de la variable d 'origine.
        0