Identificación de la causa raíz de la consulta MySQLi que recupera solo una fila
Cuando se enfrenta el problema en el que una consulta MySQLi devuelve solo una fila a pesar de esperar varias , es esencial examinar el código involucrado. En el caso proporcionado, la consulta tiene como objetivo recuperar datos de las tablas sb_buddies y sb_users.
El código selecciona columnas de ambas tablas y las une según el campo buddy_requester_id. Sin embargo, la línea siguiente intenta recuperar solo una fila usando $request_list_result->fetch_array().
Solución: usar fetch_all() para recuperar varias filas
Para recuperar varias filas, es necesario emplear el método 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'];
Explicando la diferencia
Al utilizar fetch_all(), el código ahora puede acceder los datos de todas las filas coincidentes, resolviendo el problema de obtener solo una fila.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3