Maison >développement back-end >tutoriel php >Pourquoi ma requête MySQLi ne renvoie-t-elle qu'une seule ligne ?

Pourquoi ma requête MySQLi ne renvoie-t-elle qu'une seule ligne ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-14 09:48:02445parcourir

Why is My MySQLi Query Returning Only One Row?

Dépannage d'une requête MySQLi renvoyant une seule ligne

Ce problème survient lorsqu'une requête MySQLi récupère une seule ligne au lieu de plusieurs lignes comme prévu. Cela se produit lorsque l'utilisateur récupère des données à l'aide de mysqli_result::fetch_array, qui récupère une seule ligne à la fois.

Pour résoudre ce problème, le code doit utiliser mysqli_result::fetch_all à la place. Cette méthode récupère toutes les lignes de l'ensemble de résultats, résolvant le problème du renvoi d'un nombre limité de lignes.

Voici le code corrigé :

$request_list_result = $mysqli->query("SELECT buddy_requester_id, buddy_reciepient_id, user_id, user_fullname FROM sb_buddies JOIN sb_users ON buddy_requester_id=user_id WHERE buddy_status='0' AND buddy_reciepient_id='". get_uid() ."');

$request_list = $request_list_result->fetch_all();

foreach ($request_list as $request_list_row) {
    echo $request_list_row['user_fullname'];
}

Cette modification garantit que toutes les lignes renvoyées par les requêtes MySQLi sont récupérées et affichées.

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