首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用不同权限进行搜索php

使用不同权限进行搜索php
EN

Stack Overflow用户
提问于 2012-08-09 21:15:15
回答 1查看 63关注 0票数 0

有一份商品目录。每一项都位于类别下。对于每个类别,我们可以拥有具有不同权限(管理员、专家、用户)的用户。添加项目时,我们选择可见性:(1) -对所有人可见(2) -仅对此项目发布的类别的管理员和专家可见(3) -对此项目发布的类别的所有成员可见(0) -对所有人隐藏(只有创建者可以看到)。

假设我有500个标题中有"Keyboard“的项目。它们中的大多数属于不同的类别。这些500中只有1项具有隐私-2(对于该类别的专家和管理员可见),并且位于"Logitech“类别下。当我作为"Logitech“类别的管理员在搜索中键入”键盘“时,我应该看到搜索找到了500个项目,并显示了其中的10个项目。如果只是一个普通用户(不是管理员或专家),在搜索中键入“键盘”,他将看到,搜索找到了499个项目,并向他显示这499个项目中的10个。

是抓取20个项目而不是10个项目,并检查每个项目的隐私,然后在搜索结果中只显示10个项目是唯一可能的解决方案吗?但是,如果所有这20个将是“隐藏的用户”呢?

提前感谢您的回复。

数据库草图:

1)项目itemsid、标题、category_id、可见性

2)分类:id、标题

3) category_userid、user_id、category_id、角色(专家、管理员、用户)

4) usersid,name

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-08-09 21:30:36

下面这样的代码可能会起到作用:

代码语言:javascript
复制
SELECT i.*,c.*,cu.*u.*
FROM items i,categories c, category_user cu, user u
WHERE i.title LIKE '%$search%'
AND i.category_id=c.id
AND cu.category_id=c.id
AND u.id=cu.user_id
AND cu.role='expert'
AND i.visibility=1

根据用户数据修改cu.role和i.visbility。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11884310

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档