基本的PHP问题,代码不会运行! (没有错误只是空白)

时间:2011-07-28 23:05:42

标签: php mysql

好的,所以我正在尝试制作一些简单的代码来显示来自MySQL服务器的新闻文章,但我得到的只是新闻文章应该是的页面中间部分。这是代码:

<?
  $query = "SELECT ID, header, content FROM news ORDER BY ID DESC";
  $result = mysql_query($query);

  while($row = mysql_fetch_array($result))
  {
    echo "<div class=\"newsItem\">";
    echo "<h2>" . $row['header'] . "</h2>";
    echo "<p>" . $row['content'] . "</p>";
    echo "</div>";
  }
  ?>

问题似乎与while循环有关。如果我写回声“WTF”;它将在循环外显示,但如果我在里面写它就不会显示。我不擅长PHP,所以我很困惑。 ID是INT和主键,标头是VARCHAR(255),内容是TEXT。有任何想法吗?连接scrips也可以工作,因为我死的时候不会收到错误信息。

4 个答案:

答案 0 :(得分:5)

尝试添加错误捕获:

  $query = "SELECT ID, header, content FROM news ORDER BY ID DESC";
  $result = mysql_query($query) or die(mysql_error());

或者你没有结果。所以添加一些东西:

if(mysql_num_row($result) > 0){
  while($row = mysql_fetch_array($result))
  {
    echo "<div class=\"newsItem\">";
    echo "<h2>" . $row['header'] . "</h2>";
    echo "<p>" . $row['content'] . "</p>";
    echo "</div>";
  }
}
else {echo 'no results';}

答案 1 :(得分:2)

您的news表格中没有记录或未启用显示警告( slap

答案 2 :(得分:1)

  • news
  • 中没有任何新闻
  • 缺少一个或多个列
  • 表新闻不存在

在您的情况下,尝试用

替换您的第二行
  $query = "SELECT ID, content FROM news ORDER BY ID DESC";

答案 3 :(得分:0)

您可能遇到数据库权限问题,或者您的查询可能有错误,但未显示错误。

如果你的php.ini中没有打开display_errors,你应该查看web服务器错误日志文件,看看当你连接到MySql数据库时是否记录了错误。

您也可以尝试:

ini_set('display_errors', 1);

在脚本的顶部,它将强制在生成的网页中显示任何数据库连接或查询错误。

注意:这是一项支持您的开发的功能,不应在生产系统上使用。