MySQL Fetch Array récupère des lignes limitées
Le code fourni vise à récupérer plusieurs lignes d'une base de données à l'aide de l'extension MySQL en PHP. Cependant, il rencontre un problème où seule la première ligne est accessible. La requête récupère les artistes commençant par « a », « b » ou « c » ; cependant, les tentatives ultérieures d'accès aux lignes au-delà de la première entraînent une erreur de décalage non définie.
La raison de ce problème réside dans la fonctionnalité de la fonction mysql_fetch_array. Il renvoie une seule ligne du jeu de résultats sous forme de tableau associatif et indexé. Pour accéder à plusieurs lignes, la fonction doit être appelée à plusieurs reprises jusqu'à ce que toutes les lignes aient été traitées.
L'extrait de code modifié suivant montre comment parcourir toutes les lignes de l'ensemble de résultats :
<code class="php">$array = mysql_query("SELECT artist FROM directory WHERE artist LIKE 'a%' OR artist LIKE 'b%' OR artist LIKE 'c%'"); while ($array_result = mysql_fetch_array($array)) { echo $array_result[0] . "\n"; // Additional processing for each row can be performed here. }</code>
Dans ce code, la boucle while continue d'appeler mysql_fetch_array jusqu'à ce qu'il n'y ait plus de lignes à récupérer dans le jeu de résultats. Cela permet au code de traiter chaque ligne selon les besoins.
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!