C'est déjà traité là => Compter le nombre de lignes d'une requête SELECT

Envoyé par
http://be2.php.net/manual/fr/function.PDOStatement-rowCount.php
«Pour la plupart des bases de données, PDOStatement->rowCount() ne retourne pas le nombre de lignes affectées par une requête SELECT. À la place, utilisez PDO->query() pour faire une requête SELECT COUNT(*), puis utilisez PDOStatement->fetchColumn() pour récupérer le nombre de lignes retournées. Votre application peut ainsi effectuer la bonne action.»
Mais, personnellement, je ne sais pas comment faire (sauf avec 2 requêtes
) pour compter combien une requêtes SELECT reverra de ligne?
par exemple, comment faire pour savoir combien de ligne reverra:
SELECT id, titre, contenu FROM `articles` WHERE etat='1'
J'ai testé ça:
1 2 3 4 5
| $stmt = $db->query("SELECT id, titre, contenu FROM `articles` WHERE etat='1'");
echo $stmt->rowCount(); // affichera 0, base de donnée MySQL 5
for ($i = 0; $i < 5; $i++) { // j'aimerai me débarrasé du 5 pour le faire varié dans le cas ou le nombre d'entrées est inférieur
$articles[] = $stmt->fetch(PDO:FETCH_ASSOC); // $articles contiendra 5 entrées
} |
Voilà, donc je cherche à savoir comment avec $stmt je peux connaitre le nombre de ligne qu'il reverra sans devoir faire une autre requêtes avec COUNT(*).
Je vous remerci d'avance pour votre aide, personnellement, j'avoue que là, je sèche comme une ..... sur un truc fondamentale et qui doit vraiment être tout bête.
Partager