Maison >développement back-end >tutoriel php >Pourquoi ma requête MySQL ne renvoie-t-elle qu'une seule ligne alors que j'en attends plusieurs ?

Pourquoi ma requête MySQL ne renvoie-t-elle qu'une seule ligne alors que j'en attends plusieurs ?

DDD
DDDoriginal
2024-11-02 18:31:30749parcourir

Why Is My MySQL Query Returning Only One Row When I Expect Multiple?

MySQL renvoie plusieurs lignes plutôt qu'une seule

Lors de la récupération de données d'une base de données à l'aide de MySQL, il est possible de rencontrer des situations où une seule ligne est est revenu, malgré l'attente de plusieurs. Pour résoudre ce problème, considérez l'explication suivante.

Dans l'exemple fourni, la requête SQL dans PhpMyAdmin renvoie plusieurs lignes avec succès. Cependant, le code PHP ne gère pas correctement la récupération de ces lignes. Voici une version modifiée du code PHP qui affichera toutes les lignes correspondant à la requête :

<code class="php">$query = mysql_query("SELECT `title`,
                             `url_title`
                        FROM `fastsearch`
                       WHERE `tags`
                            LIKE '%$q%'
                       LIMIT 5");

while ($row = mysql_fetch_assoc($query)) {
    print_r($row);
}</code>

Dans ce code corrigé :

  • La variable $query est correctement orthographiée.
  • La fonction mysql_fetch_assoc() est utilisée dans une boucle while pour parcourir et imprimer chaque ligne renvoyée par la requête.
  • Chaque ligne est stockée dans la variable $row et sortie à l'aide de print_r().

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn