gpt4 book ai didi

php - 如何将用户表与关注的用户帖子内部联接?

转载 作者:行者123 更新时间:2023-11-29 11:05:58 25 4
gpt4 key购买 nike

我正在尝试检索当前用户关注的人的帖子及其详细信息。我一直在研究似乎加入是正确的方法,但我不确定它有什么问题。

这是我的代码

$queryfeed = "SELECT posts.user_id, posts.body, posts.image, posts.has_image 
FROM posts, follows WHERE posts.user_id = follows.leader_id
AND follows.follower_id =$user_id INNER JOIN users ON users.user_id
= follows.leader_id";

$resultfeed = $db->query($queryfeed);
if($resultfeed->num_rows > 0) {
while( $rowfeed = $resultfeed->fetch_assoc() ) {
if($rowfeed['posts.has_image'] == 1) {
?>
<article class="post">
<div class="post-head cf">
<a class="userpic" href=""><img src="<?php echo $userpic ?>" alt="<?php echo $rowfeed['users.username'] ?>"></a>
<a href="" class="username">
<?php echo $rowfeed[users.'username']; ?>
</a>
</div>
<img src="users/user_<?php echo $rowfeed['posts.user_id'] ?>/posts/<?php echo $rowfeed['posts.image']; ?>" alt="">
<div class="post-body">
<div class="post-options">
<a class="likes" href="">2 likes</a>
</div>
<p>
<a class="username" href="">
<?php echo $rowfeed['users.username'] ?>
</a>
<?php echo $rowfeed['posts.body'] ?>
</p>
<hr />
<div class="cf">
<a class="like hide-text" href="javascript:;">Like This Post</a>
<form action="" class="comment">
<input type="text" placeholder="Add a comment">
</form>
</div>
</div>
</article>

<?php } else { ?>

我的表格是这样的

users
user_id | username | avatar

posts
post_id | user_id | body | image | has_image

follows
leader_id | follower_id

最佳答案

从您的原始查询中,我发现您只对帖子的数据感兴趣(而不是发布帖子的用户的数据)。我假设 $user_id 保存当前用户的 id,即也用作 follower_id 的值。如果是这种情况,查询就会变得更容易:

SELECT p.user_id, p.body, p.image, p.has_image
FROM followers f INNER JOIN posts p ON f.leader_id = p.user_id and f.follower_id = $user_id

如果您还对发帖者的用户数据感兴趣,请按如下方式更改查询:

SELECT p.user_id, p.body, p.image, p.has_image, u.username, u.avatar
FROM follows f
INNER JOIN posts p ON f.leader_id = p.user_id and f.follower_id = $user_id
INNER JOIN users u ON p.user_id = u.user_id

关于php - 如何将用户表与关注的用户帖子内部联接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41404236/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com