Maison >base de données >tutoriel mysql >Pourquoi mon MySQL `mysql_fetch_array()` renvoie-t-il uniquement la première ligne ?
Comprendre la récupération sur une seule ligne dans les interactions MySQL
Dans le code fourni, vous utilisez la fonction mysql_query() pour récupérer un résultat défini à partir d'une base de données MySQL et tente ensuite de récupérer des lignes à l'aide de mysql_fetch_array(). Cependant, vous rencontrez un problème où seule la première ligne est accessible.
La fonction mysql_fetch_array() récupère une ligne du jeu de résultats et la représente sous forme de tableau indexé. Dans votre cas, chaque ligne correspond à un ensemble de noms d'artistes correspondants commençant par "a", "b" ou "c".
Lorsque vous exécutez mysql_fetch_array() pour la première fois, il place le premier ligne du jeu de résultats dans la variable $array_result, rendant $array_result[0] disponible. Cependant, les appels suivants à mysql_fetch_array() sans spécifier de paramètre renverront toujours la première ligne, écrasant les résultats précédents.
Pour récupérer plusieurs lignes de l'ensemble de résultats, vous devez répéter la fonction mysql_fetch_array() dans un boucle. Par exemple, vous pouvez utiliser une boucle while ou foreach pour parcourir le jeu de résultats, en appelant mysql_fetch_array() à chaque itération et en stockant le tableau résultant dans une variable. Cela vous permettra d'accéder à chaque ligne individuellement et de faire écho à son contenu comme vous le souhaitez.
Voici un exemple utilisant une boucle while :
$array = mysql_query("SELECT artist FROM directory WHERE artist LIKE 'a%' OR artist LIKE 'b%' OR artist LIKE 'c%'"); while($row = mysql_fetch_array($array)) { var_dump($row); // Outputs contents of each row }
Cette boucle parcourra l'ensemble de résultats et affichera le contenu de chaque ligne, vous permettant d'accéder et de faire écho à toutes les données disponibles de la requête.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!