-1

所以我检查一下是否允许您查看该文件夹(目前正在检查 ip 是否是我的家庭 ip)

我希望此检查更新为检查您的帐户是否拥有权利。所以我想从gallery_folders中获取所有名称,其中user_id =:user_id(是的pdo,但这无关紧要)

SELECT      f.name 
FROM        gallery_folders     as f 
LEFT JOIN   gallery_link        as p 
WHERE       f.id = p.folder_id
AND         p.user_id = :user_id

这就是我卡住的地方,我不知道如何添加user_id它,所以它只会得到所有(p.folder_id where user_id=:user_id)

如有必要,数据库结构:

文件夹

  • 画廊文件夹
    • ID
    • 姓名

用户

  • 画廊用户
    • ID
    • 用户名
    • 密码
    • 令牌

链接表

  • 画廊链接
    • ID
    • 用户身份
    • 画廊
4

1 回答 1

1

如果您只想要用户拥有适当权限的文件夹,那么您需要将连接从 更改LEFT JOININNER JOIN. 您还需要修复您的 join 语句,使其ON f.id = p.folder_id不是WHERE f.id = p.folder_id.

我认为这就是你所追求的:

SELECT f.name 
FROM gallery_folders f 
INNER JOIN gallery_link p 
ON f.id = p.folder_id
WHERE p.user_id = :user_id
于 2014-05-07T18:08:27.027 回答