回显Fetch_Assoc失败



我真的被困在这里,老实说,我自己在这里看不到任何错误,我在我的网站上做过几次这样的事情。

我希望我的主页最多更新三个最新的新闻更新。我已经设置了所有表,并带有用于测试的条目。这是我的php代码,用于显示最近的三篇文章:

    <?php
$sql = mysqli_query($link, "SELECT * FROM news ORDER BY PostCreated ASC LIMIT 3");
if($sql)
    {
        while($row = mysqli_fetch_assoc($sql))
            {
                echo $row['PostContent'];
            }
        else
            {
                echo "Cannot fetch current news update. Error: " . mysqli_error($link);
            }
    }
else
    {
        echo "Cannot fetch current news update. Error: " . mysqli_error($link);
    }
?>

所以正如你所看到的,它抓住了三个最近的,我已经通过在while loop之前放置echo mysqli_num_rows($sql);来证明这一点。这将返回正确的1因为只有一个条目。

当我尝试echo $row['PostContent'];整个页面变为空白时出现问题,如果我从等式中取出 while 循环,它将显示页面的其余部分,但几乎就像我使用 echo $row['PostContent']; 停止页面的其余部分加载一样?

任何帮助将不胜感激,如果这是我的一个非常愚蠢的错误,最终浪费了你们的时间,我感到非常抱歉。谢谢!

这里可能的问题有:

  1. 您在while循环之后使用了else块。

  2. 您已error_reporting关闭。

这些解释了当while存在时页面变为空白,以及当页面被拿走时执行其余页面。

这是你的问题。

else
            {
                echo "Cannot fetch current news update. Error: " . mysqli_error($link);
            }

在 while 循环后不能使用它。

最新更新