在HTML页面上显示博客帖子

时间:2016-01-02 20:36:46

标签: php html mysqli

include "connection file";
$query = "SELECT * FROM Blog";
$result = mysqli_query($query);
$num_results = mysqli_num_rows($result);
for($i=0; $i<$num_results; $i++) {
$row = mysqli_fetch_assoc($result);
echo "<div class="blogEntry"><h4>" . $row['title'] . "</h4><h5>" . $row['date'] . "</h5><p>"
    . $row['text'] . "</p></div>";
}  

嗨,所以,我正在尝试遍历我的所有博客帖子并按顺序显示到页面中,因此最新的条目是第一个,但我似乎无法让它太有效。尝试了几种不同的方式,总是白屏!真的很感激任何帮助:)。我也将添加一个搜索功能和过滤器,我现在不需要这个,但任何建议在哪里寻找有关实现这些的信息也会非常有帮助。链接到我将此代码放在我的网站上的位置:http://www.obeytoplay.com/。谢谢!

1 个答案:

答案 0 :(得分:2)

  尝试了几种不同的方式,总是白屏!

那是因为您的代码中存在语法错误。使用反斜杠(")转义内部双引号(\)或使用单引号(')。

方式(1):

include "connection file";
$query = "SELECT * FROM Blog";
$result = mysqli_query($query);
$num_results = mysqli_num_rows($result);
for($i=0; $i<$num_results; $i++) {
    $row = mysqli_fetch_assoc($result);
    echo "<div class=\"blogEntry\"><h4>" . $row['title'] . "</h4><h5>" . $row['date'] . "</h5><p>" . $row['text'] . "</p></div>";
}  

方式(2):

include "connection file";
$query = "SELECT * FROM Blog";
$result = mysqli_query($query);
$num_results = mysqli_num_rows($result);
for($i=0; $i<$num_results; $i++) {
    $row = mysqli_fetch_assoc($result);
    echo "<div class='blogEntry'><h4>" . $row['title'] . "</h4><h5>" . $row['date'] . "</h5><p>" . $row['text'] . "</p></div>";
}  
  

我试图遍历我的所有博文并按顺序显示到页面,以便最新条目首先

使用ORDER BYSELECT子句一起重新排序结果集,如下所示:

SELECT * FROM Blog ORDER BY column_name DESC/ASC;

以下是参考资料: