確定MySQLi 查詢僅檢索一行的根本原因
當遇到MySQLi 查詢儘管期望多行但僅返回一行的問題時,有必要檢查所涉及的代碼。在所提供的情況下,查詢旨在從 sb_buddies 和 sb_users 表中檢索資料。
代碼從兩個表中選擇列,並根據 buddy_requester_id 欄位將它們連接起來。但是,後續行嘗試使用 $request_list_result->fetch_array() 僅取得單行。
解決方案:使用fetch_all() 檢索多行
To檢索多行,需要使用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