我有一个查询从数据库返回帖子,查询按类别对帖子进行分组,并且标题是指向原始帖子的链接。返回的帖子显示在类别页面上。如何创建原始帖子的链接,PHP
问题是,虽然帖子标题按类别显示和分组,但我发现只找到每个帖子每个帖子的第一个post_id,并且只有每个类别中具有最低ID的第一个帖子或帖子由我的链接返回。该链接将您带到原始帖子。 原始讯息被显示在被称为“entries.php”
例页上:
POST1 ID = 1
POST2 ID = 2
Post3 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 />";
}
您的查询似乎缺少'的'GROUP BY'部分post_id'。 – aaaaaa123456789