我想在以下行下方添加更多帖子查询
OR p.posted_to='$userid'
但是当我在下面的查询中添加 OR 语句时,它会返回结果,但每次我单击加载更多时,它都会不断重复相同的帖子,而不是加载较旧的帖子。
如果我将此 OR 语句添加到我的常规节目帖子中,它会执行它应该做的事情。 当我将 OR 语句添加到下面的 Loadmore 帖子查询时,会出现唯一的问题。
$sql = "SELECT p.body, p.user_id, p.posted_to, p.post_likes,p.stamp, p.id,u.username, u.imagelocation
FROM posts p
INNER JOIN users u
ON p.user_id=u.id
WHERE p.user_id='$userid'
AND p.id <'$lastcomment'
ORDER BY p.stamp DESC
LIMIT 0,3";
我假设你写了这样的东西:
WHERE p.user_id='$userid' OR p.posted_to='$userid'
AND p.id <'$lastcomment'
这不起作用,因为 AND 的优先级高于 OR。您需要括号。
WHERE (p.user_id='$userid' OR p.posted_to='$userid')
AND p.id <'$lastcomment'
如果没有括号,它将解释如下:
WHERE p.user_id='$userid'
OR (p.posted_to='$userid' AND p.id <'$lastcomment')