为了账号安全,请及时绑定邮箱和手机立即绑定

php mysqli只返回一行

php mysqli只返回一行

暮色呼如 2019-08-14 15:41:21
php mysqli只返回一行此代码仅返回一行,但应返回2行。我已经尝试过php myadmin中的sql,它完全返回了2行。我在这做错了什么?$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_row = $request_list_result->fetch_array();echo $request_list['user_fullname'];顺便说一下,上面的代码是通过以下脚本获取profile.php的过程:$index = new Template('views/template/one.php', array('subtitle' => 'Dashboard','stylesheets' => array('/assets/css/profile.css'),'scripts' => array('/assets/js/dashboard.js'),'sidebar' => 'sidebar.php','content' => 'views/profile.php','errors' => $errors,'successes' => $successes,'request_list' => $request_list_row //right here), true);
查看完整描述

3 回答

?
噜噜哒

TA贡献1784条经验 获得超7个赞

你需要遍历结果(如TheSmose所提到的)

while ($request_list_row = $request_list_result->fetch_array()) {
    echo $request_list['user_fullname'];}

并且您需要将结果数组发送$request_list到模板而不是$request_list_row

改变这个

'request_list' => $request_list_row //right here

对此

'request_list' => $request_list //right here

如果你想要的不仅仅是user_fullname你的模板(并且你没有要求PHP> = 5.3 mysqli_result::fetch_all),那么你需要在循环中建立自己的数组。

我不知道你的模板代码有什么期望,但你可以试试

while ($request_list_row = $request_list_result->fetch_array()) {
    echo $request_list[] = $request_list_row;}


查看完整回答
反对 回复 2019-08-14
?
慕田峪7331174

TA贡献1828条经验 获得超13个赞

您需要遍历结果。就目前而言,你只是获取第一行。

$uid = get_uid();$sql = "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='{$uid}'";$request_list_result = $mysqli->query($sql);while ($request_list_row = $request_list_result->fetch_array()) {
    echo $request_list['user_fullname'];}


查看完整回答
反对 回复 2019-08-14
  • 3 回答
  • 0 关注
  • 884 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信