mysql_fetch_array ne récupère pas toutes les lignes
$query = "SELECT * FROM table";
$result = mysql_query($query, $db);
$all = mysql_fetch_assoc($result);
echo mysql_num_rows($result) . ":" . count($all);
Cela renvoie
2063:7
Je n'ai pas utilisé le comte avant, donc je ne suis pas sûr à 100% c'est sans compter les colonnes de la table. Il est tard et je suis peut-être aller noix.
Voici un autre exemple de ce qui se passe:
$result = mysql_query($query, $db);
echo "Rows: " . mysql_num_rows($result) . " <BR />";
$player_array = mysql_fetch_assoc($result);
echo "<pre>";
print_r($player_array);
echo "</pre>";
Sorties:
Rows: 9
Array
(
[playerID] => 10000030
)
TL;DR: je soumettre des requêtes qui retournent plusieurs lignes, mais fetch_array seulement me donne une petite portion de ces lignes dans le tableau résultant.
OriginalL'auteur sejje | 2011-03-07
Vous devez vous connecter pour publier un commentaire.
mysql_fetch_assoc
renvoie qu'une seule ligne à la fois, vous devez utiliser la boucle pour récupérer toutes les lignesOriginalL'auteur Shakti Singh
Chaque appel à
mysql_fetch_assoc($result);
vous donne une ligne de l'ensemble de résultats:(à partir de la documentation)
Vous devez utiliser la fonction dans une boucle:
L'exemple dans le document montre comment il est fait.
Pas besoin de s'excuser 🙂
OriginalL'auteur Felix Kling
mysql_fetch_assoc ne fonctionne pas de cette façon, vous avez besoin de l'appeler plusieurs fois pour obtenir toutes les lignes. Comme ceci:
OriginalL'auteur hcb