douzhou7037 2015-11-16 21:32
浏览 32
已采纳

如何使用php迭代整个mysql表

I want to iterate through all the records of mysql table. Here's how my table looks like

enter image description here

So I want to print out the name of the user and the subject of the post they posted. I have another user table. Here's my php code.

require_once('config.php');
    // build SQL query
            $sql ="SELECT user_id, subject FROM post"; 
            $result = mysqli_query($conn, $sql);
            $row = mysqli_fetch_assoc($result);

            foreach ($row as $k => $v) {
                if($k == 'user_id'){

                    $uid = $v;
                    $sql2 ="SELECT '$db', username FROM users WHERE user_id='$uid'"; 
                    $result2 = mysqli_query($conn, $sql2);
                    $row2 = mysqli_fetch_row($result2);
                    echo $row2[1]. " posted ";

                }
                if ($k == 'subject') {

                    echo "<a href='#'> $v </a>";
                }
            }

I am using the user_id to find the user in my other table. Pretty much a noob here. However I only get one output. enter image description here

However there should have been 2 outputs. because my post table contains 2 posts made by 2 different users. I only get the first post as an output. can someone please point me to right direction. Also how do I iterate a SQL table for all the records.

  • 写回答

2条回答 默认 最新

  • dongyejun1983 2015-11-16 21:53
    关注

    If you expect your query to return more than 1 result, you should call mysqli_fetch_assoc in a while loop.

    Also, you can use a JOIN query to return all the data in a single query:

    $sql = "SELECT post.subject, users.username 
            FROM post JOIN users 
            ON post.user_id = users.user_id"; 
    $result = mysqli_query($conn, $sql);
    while($row = mysqli_fetch_assoc($result)){
        echo sprintf("<p>%s posted <a href='#'>%s</a></p>", $row['username'], $row['subject']);
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 Pwm双极模式H桥驱动控制电机
  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题