mysqli_fetch_assoc()没有返回任何内容

时间:2016-05-09 02:26:23

标签: php mysql row

这不是我第一次使用facebookLoginButtonPressed来获取行的特定列。由于某种原因,我无法弄清楚为什么这次不工作。继承我的代码:

mysqli_fetch_assoc()

我的表格中有一行$sql = "SELECT * FROM database.table WHERE PushNumber > 0"; $result = $conn->query($sql); if($result->num_rows > 0) { while($row = mysqli_fetch_array($result)) { // This will loop through each row, now use your loop here $row = mysqli_fetch_assoc($result); $pushNumber = $row['PushNumber']; $followingIDs = $row['FollowingIDs']; $usernameID = $row['Username']; error_log("'$pushNumber", 0); error_log("'$usernameID", 0); } } 大于PushNumber0(类型:$pushNumber)和int(类型:{{ 1}})打印在错误日志中,两者都打印为:$usernameID 我不知道为什么!没有拼写错误,我知道该行中的事实string等于''PushNumber等于1。任何建议将不胜感激,请帮忙。谢谢!

1 个答案:

答案 0 :(得分:3)

您似乎在$ row变量中分配了两组完全不同的值。

$row = mysqli_fetch_array($result)将整个数组转移到$ row,但是在你的循环中你使用$row = mysqli_fetch_assoc($result)将一条记录转移到$ row,这很可能会使你的循环失效。

试试这个:

if($result->num_rows > 0) 
{
    while($row = mysqli_fetch_assoc($result)) 
    {
        // This will loop through each row, now capture each row's data here
        $pushNumber = $row['PushNumber'];
        $followingIDs = $row['FollowingIDs'];
        $usernameID = $row['Username'];
        error_log($pushNumber, 0);
        error_log($usernameID, 0);
    }
}