Определение основной причины запроса MySQLi, извлекающего только одну строку
При столкновении с проблемой, когда запрос MySQLi возвращает только одну строку, несмотря на ожидание нескольких строк , важно изучить задействованный код. В представленном случае запрос направлен на получение данных из таблиц sb_buddies и sb_users.
Код выбирает столбцы из обеих таблиц и объединяет их на основе поля Buddy_requester_id. Однако последующая строка пытается получить только одну строку, используя $request_list_result->fetch_array().
Решение: использование fetch_all() для получения нескольких строк
Чтобы получить несколько строк, необходимо использовать метод fetch_all():
$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_rows = $request_list_result->fetch_all(); echo $request_list_rows[0]['user_fullname'];
Объяснение разницы
Благодаря использованию fetch_all() код теперь может получить доступ к данным для всех совпадающих строк, решая проблему получения только одной строки.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3