我有一个SQL表,其中包含列ID(主要A_I),uid,标题,消息,时间,更新时间。用户提交包含除updatetime之外的所有这些属性的帖子,我需要在页面上显示管理员的所有帖子,如果没有,那么我只需要显示用户所做的帖子。
现在我在数据库中有两个帖子,但是当我尝试显示所有帖子时,它只显示第一篇帖子
require 'header.php';
require 'navbar.php';
if($_SESSION['id'] == '')
{
header('Location: confirm.php?state=5');
}
if($_SESSION['admin'] == '1')
{
try
{
$poststmt = "SELECT ID, uid, title, message FROM posts";
$postssql = $pdo->prepare($poststmt);
$postssql->execute();
$posts = $postssql->fetch();
foreach($posts AS $ID=>$sectional)
{
echo $sectional;
}
}catch(PDOException $e){echo $e;}
}
答案 0 :(得分:0)
多数民众赞成因为$posts = $postssql->fetch();
只提取了一行。
您应该使用fetchAll()
或执行:
while($row = $postssql->fetch()){
print_r($row);
}
而不是忘记那个foreach
循环。