晚上好,追个剧吧! 游客
image
极致CMS建站教程-进阶篇

如何对不同的会员角色设置不同的发布文章数量限制?

可能很多对系统还是不是很熟悉,首先做这种二开功能,必须自己清楚数据库表之间的联系。会员表:member 会员角色表:member_group (设置相关字段)发布文章表:article (...

描述

可能很多对系统还是不是很熟悉,首先做这种二开功能,必须自己清楚数据库表之间的联系。

会员表:member 

会员角色表:member_group (设置相关字段)

发布文章表:article (用户统计总共发布的文章数)

在会员角色表里面创建一个字段,每天限制发布文章数字段:day_limit_num

设置会员每天只能发布5篇

另外创建一个分组VIP,并设置每天发布50篇

现在后台设置已经设置完毕了,下面要修改前台发布方法里面

app\home\c\UserController.php

将文件复制一份,放到 app\home\plugins\ 下面,并修改空间命名,如下:

这个是正确的二开思路,将控制器放到插件目录,这样就不会被升级覆盖了。

找到 release 这个方法,就是发布文章的方法,在新增的地方加入查询发布数量的代码

//查询当天已经发布是文章数量
$start_time = strtotime(date('Y-m-d').' 00:00:00');//通过日期转时间戳获取当天开始时间戳
$end_time = strtotime(date('Y-m-d').' 23:59:59');
$sql = "member_id=".$this->member['id']." and addtime>=".$start_time." and addtime<=".$end_time;
$count = M('article')->getCount($sql);
//获取当前会员的角色限制发布的数量
$group = M('member_group')->find(['id'=>$this->member['gid']]);
$max = (int)$group['day_limit_num'];
if($count>=$max){
	if($this->frparam('ajax')){
		JsonReturn(['code'=>1,'msg'=>JZLANG('发布失败,您已超过当天发布数量限制('.$max.')!')]);
	}else{
		Error(JZLANG('发布失败,您已超过当天发布数量限制('.$max.')!'));
	}
					
}

如上,就完成了根据会员角色,限制会员一天内发布的文章数量!

0
收藏
海报

评论

请登录后发表评论

登录

评论列表 0

  • 这篇文章还没有收到评论,赶紧来抢沙发吧~

  • 友情链接: 黑猫查查网 黑猫图床 YzmCMS官方网站

    黑猫查查网是中立、开放和人性化的精选信息资源分享平台,查你所需,知你所想。

    站点声明: 本站资源仅供研究学习请勿商用以及产生法律纠纷本站概不负责!如果侵犯了您的权益请与我们联系

    鄂ICP备2023011183号-2 · 鄂公网安备42282602000148