之前的ecshop项目中客户要求某篇文章需要相应用户登录之后方能查看,那么根据这个需求,我们只需要在文章页面增加权限判断。
作为新时代的懒人,自然先简单搜索了一下google,得到一篇《限制某等级访问某栏目的文章》
具体代码可以到上面那篇文章中得到,我的需求与参考资料不同之处是:
- 只需要限制某篇文章的权限
- 提示信息中引导用户去注册登录
那么最终我修改的代码如下:
/*------------------------------------------------------ */
//-- 判断权限才能访问某栏目or某文章
/*------------------------------------------------------ */
$cat_id = $db->getOne("SELECT cat_id FROM " . $ecs->table('article') . " WHERE article_id = '".intval($_REQUEST['id'])."' ");
if (($article_id == 36) && $_SESSION['user_rank'] <= 1)
{
show_message("对不起,您无权限浏览,请登录后下载数据包!", "点击登录", 'user.php');
}
如果你需要修改栏目的权限,那只要把$article_id改为$cat_id并增加具体的栏目id值。当然,你也可以双重判断,无非就是$article_id与$cat_id之间多个&&或者or而已。具体请自行发挥……
网上看到有人将这个功能更加完善化了,后台操作文章的页面里就有权限设置。本项目中不需要,下次有空完善地写一下好了。