phpcms不允许评论仍然能提交评论的BUG修复

phpcms v9系统里,如果某个文章设定不允许评论,那么,你打开文章,是看不到评论的。但它只是从模板显示上不显示而已。如果你直接打开评论网址,仍然能显示评论,也能提交评论。或者你不打开评论页面,通过将其它文章的评论网址,改个参数,将那个评论的文章ID号为这个文章的ID号,则仍然能提交对该文的评论。也就是说,并没有从控制器上禁止提交评论。
解决办法,就是在提交评论时,增加对是否允许评论的判断。如果不允许,则不准提交。

直接上代码。在modules\comment\index.php文件的 public function post() 函数89行处

//通过API接口调用数据的标题、URL地址
        if (!$data = get_comment_api($this->commentid)) {
            $this->_show_msg(L('illegal_parameters'));
        } else {
            $title = $data['title'];
            $url = $data['url'];           
            unset($data);
        } 

在89行处增加判断,最后变成:

//通过API接口调用数据的标题、URL地址
        if (!$data = get_comment_api($this->commentid)) {
            $this->_show_msg(L('illegal_parameters'));
        } else {
            $title = $data['title'];
            $url = $data['url'];           
            unset($data);
            if (isset($data['allow_comment']) && empty($data['allow_comment'])) {
                showmessage(L('canot_allow_comment'));
            }
        } 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值