我有一个从数据库返回帖子的查询,该查询按类别对帖子进行分组,标题是原始帖子的链接。返回的帖子显示在类别页面上。
问题是,虽然帖子标题按类别显示和分组,但我发现每个类别的每个帖子的第一个 post_id 都被找到,并且我的链接仅返回每个类别中第一个帖子或 ID 最低的帖子。该链接会将您带到原始帖子。 原始帖子显示在名为“entries.php”的页面上
示例:
帖子 1 ID = 1
帖子2 ID = 2
帖子 3 ID = 3
上面的所有帖子均按类别分组,但如果我将鼠标悬停在它们上方,由于某种原因,它们都会拾取 Post1 id=1。我可以做些什么来确保当我将鼠标悬停在每个 id 上时都能找到它们吗? 感谢您的宝贵时间!
查询:
$query = "SELECT category, GROUP_CONCAT(DISTINCT title SEPARATOR '<br />') titles, post_id
FROM categories, posts
WHERE categories.category_id = posts.category_id
GROUP BY category";
$result = mysqli_query($dbc, $query)
or die('Error querying database.');
while ($row = mysqli_fetch_array($result)){
echo "<h2>".$row['category']."</h2>";
echo '<a href="entries.php?id='.$row['post_id'].'">'.$row['titles'].'</a>';
echo "<hr />";
}
最佳答案
您应该按 post_id 进行 GROUP BY,也可以根据需要使用 ORDER BY 进行排序。
关于php - 如何创建原始帖子的链接,PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34902448/