MySQL / PHP - 如何将作者ID与用户ID匹配并显示用户名

时间:2014-09-20 00:52:41

标签: php mysql

另一个问题。我需要显示一个用户名,所以我正在做的是获取作者ID(即'1'),然后使用查询说从用户表中获取用户名,其中作者ID与用户ID相同

我的问题是我得到的值为'1',如上所述,以下是我的代码。我在这里遗漏了什么或者......?

 $users = mysqli_query($sql, "SELECT * FROM users WHERE userid = '$authorid'") or die($users . "<br/>" . mysqli_error($sql));

 while($userData = mysqli_fetch_array($users)) {
    $postAuthor = $usersData['username'];
} 

修改1

我说还提到上面的信息应该显示'Dan'这个名字。

如果作者ID应该是来自帖子行的1(它是),则用户'Dan'的用户ID为1。这是与用户表有关的唯一用途,因此不会在任何地方覆盖它。我很困惑。

1 个答案:

答案 0 :(得分:4)

这应该是一个错误:

while($userData = mysqli_fetch_array($users)) {
       ^^ no s
    $postAuthor = $usersData['username'];
                    ^^ used different variable name
}

注意:在这种情况下也使用预准备语句,无论如何你都在使用mysqli。

$select = $sql->prepare("SELECT * FROM users WHERE userid = ?");
$select->bind_param('i', $author_id);
$select->execute();
$results = $select->get_result();

while($userData = $results->fetch_assoc()) {
    $postAuthor = $userData['username'];
}