我正在创建一个小型私人论坛,以获得有关PHP / PDO等的更多知识。现在我有一个奇怪的错误/错误/错误的代码片段没有显示回声。这是我的代码。
$sql2 = $db->prepare('SELECT topic_id, topic_subject,topic_date,topic_cat FROM topics WHERE topic_cat = :topid');
$sql2->bindParam(':topid', $_GET['id'], PDO::PARAM_INT);
$sql2->execute();
$result2 = $sql->rowCount();
if($result2 === FALSE){
echo 'The topics could not be displayed, please try again later.';
}
elseif ($result2 === 0){
echo 'There are no topics in this category yet.';
} else {
//prepare the table
echo '<table border="1">
<tr>
<th>Topic</th>
<th>Created at</th>
</tr>';
while($row = $sql2->fetch()) {
echo '<tr>';
echo '<td class="leftpart">';
echo '<h3><a href="topic.php?id=' . $row['topic_id'] . '">' . $row['topic_subject'] . '</a><br /><h3>';
echo '</td>';
echo '<td class="rightpart">';
echo date('d-m-Y', strtotime($row['topic_date']));
echo '</td>';
echo '</tr>';
}
}
它应该在echo
显示while($row = $sql2->fetch())
,但事实并非如此。另外我知道{
和}
不够,但这是因为代码的其他部分不相关。
答案 0 :(得分:0)
您似乎计算$sql
返回的行,然后循环遍历$sql2
。您是否检查了$sql2
中是否有任何结果?