我正在尝试获取用户喜欢显示的所有帖子,而不是所有帖子。
我的数据库表如下:
喜欢(列(整数):likeID、likeBy、likeOn)
帖子(列:postID、postBy、文本、likeCount)
用户(列:用户 ID、用户名)
这是我的代码,用于获取用户喜欢的帖子(目前它获取数据库中所有喜欢的帖子,而不是用户喜欢的帖子)
public function likes($user_id, $num){
$stmt = $this->pdo->prepare("SELECT * FROM `likes`, `posts`, `users` WHERE `likeOn` = `userID` and `user_id` = `postBy` ORDER BY `likeOn` DESC");
$stmt->bindParam(":num", $num, PDO::PARAM_INT);
$stmt->execute();
$tweets = $stmt->fetchAll(PDO::FETCH_OBJ);
关于如何获取用户喜欢的帖子而不是所有喜欢的帖子有什么想法吗?
最佳答案
select p.postID from posts p inner join likes l on l.likeOn=p.postID inner join users u on u.userID = l.likeBy;
我认为上面的查询适合你在 MySQL 数据库中尝试一下。
关于php - 从数据库中获取用户喜欢的所有帖子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53006194/