手机游戏
经典单机
角色扮演
休闲益智
动作冒险
射击枪战
赛车竞速
模拟经营
解密闯关
策略战争
手机软件
时尚购物
体育运动
资讯阅读
教育学习
摄影摄像
生活服务
效率办公
聊天社交
视频盒子
其它软件
新闻资讯
游戏攻略
软件教程
游戏问答
软件资讯
软件技术
叨叨念念
网站技术
技术问答
软件教程
资源资料
原创作品
代码学习
网页设计
网络技术
合集
合集
游戏合集
软件合集
资讯合集
视频合集
首页 > 叨叨念念 > 叨叨念念

emlog isLogCanComment函数小BUG(MySqli)

作者:星知苑 时间:2014-11-20 08:42:26

今天论坛有人说评论有BUG,我看了一下,无意中注意到isLogCanComment函数。

	function isLogCanComment($blogId) {
		if (Option::get('iscomment') == 'n') {
			return false;
		}
		$query = $this->db->query("SELECT allow_remark FROM ".DB_PREFIX."blog WHERE gid=$blogId");
		$show_remark = $this->db->fetch_array($query);
		if ($show_remark['allow_remark'] == 'n' || $show_remark === false) {
			return false;
		}else {
			return true;
		}
	}

[break]以上是isLogCanComment函数的代码,数据库(连接方式使用mysqli)查询$show_remark的值应该是空值NULL,所以不能用===false。

注意:数据库连接方式使用mysqli就会出现这个问题

影响就是POST伪造gid,可以把评论发布到不存在文章gid下,影响应该不大。

 

解决方法:

修改emlog目录下includemodelcomment_model.php的isLogCanComment函数的代码

		if ($show_remark['allow_remark'] == 'n' || $show_remark === false) {
改成
		if ($show_remark['allow_remark'] == 'n' || $show_remark == false) {
或者
		if ($show_remark['allow_remark'] == 'n' || $show_remark === NULL) {

良心推荐

女生最喜欢用的拍照软件推荐
  • 轻颜相机最新版下载
  • POCO相机破解版下载
  • faceu激萌下载最新版
  • 水印相机最新版本下载免费
  • Foodieapp安卓下载
有了手机就不用怕自己拍照出来的照片不够美丽了,小编有整理了不同种类的相机app分享推荐给你们,绝对是非常好用的,不仅是免费的可以直接的处理好各种喜欢什么样式的照片修改的效果,还有很多的贴图或者是模板可以提供选择,让你光彩夺目焕然一新。

相关资讯