用户表
帖子表
连接表
如果subscriptions.userID是user.userID,我想使用subscription.friendID作为posts.authorID获取帖子数据。
这对我来说有点困惑,希望有人可以帮助我。这是我到目前为止,但我也得到了订阅数据。我只想要发布表数据。
mysql_query("SELECT posts.*, connections.userID, connections.subID FROM posts, connections
WHERE posts.userID = '$userid' AND posts.userID = connections.subID");
答案 0 :(得分:0)
如果您只想要发布数据,请执行以下操作:
mysql_query("SELECT posts.* FROM posts, connections
WHERE posts.userID = '$userid' AND posts.userID = connections.subID");
作为一个多余的注释,如果用户提供$ userid(例如通过HTML表单),请确保至少在将其放入查询之前通过mysql_real_escape_string()运行它。否则,您将容易受到SQL注入攻击。更好的方法是通过PDO或类似的方式使用准备好的声明。
答案 1 :(得分:0)
我在原帖中没有看到连接表,因此我将根据您提供的架构开始工作。
根据您在此处所写的内容,认为您正在寻找类似“从某些用户的朋友那里获取所有帖子”的内容 - 这将是:
SELECT p.authorID, p.postdata
FROM posts p
INNER JOIN subscriptions s ON s.friendID = p.authorID
WHERE s.userID = '$userid'
此功能类似于Facebook上的墙功能。
如果您需要更多用户信息,例如用户名,您也可以加入用户表。