phpcms v9升级后台无法上传缩略图的原因分析
时间:2024年02月09日
/来源:网络
/编辑:佚名
phpcms V9 是目前国内使用人数最多的一款开源免费的CMS系统,正是由于他的免费性,开源性,以及其自身的功能性比较强大,所以倍受许多站长朋友们的亲来,以及许多的公司的喜欢。
phpcms也为了完善程序漏洞,官方人员会经常性的发布一些程序补丁,让用户使用。防止一些特殊群体,通过程序的漏洞去攻击别人的网站。
不过这次更新了phpcms v9之后,发现网站后台上传缩略图的时候,会出现无法上传的现象,浏览器提示undefined错误,经过一方面的测试,发现这个错误,只有一些火狐核心的浏览器才会出现,IE,360这种的IE核心浏览器上传一切正常。这是什么原因造成的呢,我们通过程序去排查一下为何后台无法上传缩略图,并出现undefined的错误。
济南网站建设中phpcms v9升级,后台无法上传缩略图,提示undefine。
一、phpcms V9 后台无法上传缩略图的处理方法
首先打开网站程序路径中的,phpcms---modules----attachment----attachments.php文件,找到attachments.php文件中的50行---53行代码,这里有一段判断是否登录的程序,我们把这段话删掉就可以了。如图所示
网站程序代码
if(empty($this->userid)){
exit('0');
}
通过删除非常简单的一段话,就能解决类似火狐核心的浏览器,后台无法上传缩略图的错误。
接下来我们详细分析为什么这句话,就会导致后台无法上传缩略图呢,以后如果大家遇到程序上面的错误,也可以通过下面的方法去分析,一定要学会灵活使用,程序都是死的,而我们程序员的思维是灵活的。
注:如果您对为何会出现无法上传缩略图错误不感兴趣,以下内容均可略过不看!
二、phpcms V9 后台无法上传缩略图的原因分析
既然知道是这句话的原因了,那么我们就看看为何是这句话导致了无法上传缩略图。
if(isset($_POST['dosubmit'])){ //判断是否点击了提交按钮
//判断是否登录
if(empty($this->userid)){ //如果useid为空,则直接退出。($this指类本身,是由attachments类在构造函数制定的。)
exit('0');
}
既然是判断了userid为空就退出,那我们无法上传缩略图,肯定是被判断为空了。我们把$this->userid输出一下看看。
输出$this->userid值
从图中可以看出,这里输出的是1,也就是说$this->userid是为1的,1肯定不是空值了。那怎么会出现退出现象了呢。我们再换一个方法测试,看看
if(empty($this->userid)){
exit('0');
}
这句话是否执行了。
//判断是否登录
if(empty($this->userid)){
echo '';
exit('0');
} else{
echo '';
}
判断是否执行empty($this->userid)
如图所示
我们看到,程序确实执行了,跳出的动作。看来火狐核心的浏览器还是把“1”当成了empty来处理,所以导致了,phpcms V9在使用火狐核心的浏览器时,后台无法上传缩略图的现象。
phpcms也为了完善程序漏洞,官方人员会经常性的发布一些程序补丁,让用户使用。防止一些特殊群体,通过程序的漏洞去攻击别人的网站。
不过这次更新了phpcms v9之后,发现网站后台上传缩略图的时候,会出现无法上传的现象,浏览器提示undefined错误,经过一方面的测试,发现这个错误,只有一些火狐核心的浏览器才会出现,IE,360这种的IE核心浏览器上传一切正常。这是什么原因造成的呢,我们通过程序去排查一下为何后台无法上传缩略图,并出现undefined的错误。
济南网站建设中phpcms v9升级,后台无法上传缩略图,提示undefine。
一、phpcms V9 后台无法上传缩略图的处理方法
首先打开网站程序路径中的,phpcms---modules----attachment----attachments.php文件,找到attachments.php文件中的50行---53行代码,这里有一段判断是否登录的程序,我们把这段话删掉就可以了。如图所示
网站程序代码
if(empty($this->userid)){
exit('0');
}
通过删除非常简单的一段话,就能解决类似火狐核心的浏览器,后台无法上传缩略图的错误。
接下来我们详细分析为什么这句话,就会导致后台无法上传缩略图呢,以后如果大家遇到程序上面的错误,也可以通过下面的方法去分析,一定要学会灵活使用,程序都是死的,而我们程序员的思维是灵活的。
注:如果您对为何会出现无法上传缩略图错误不感兴趣,以下内容均可略过不看!
二、phpcms V9 后台无法上传缩略图的原因分析
既然知道是这句话的原因了,那么我们就看看为何是这句话导致了无法上传缩略图。
if(isset($_POST['dosubmit'])){ //判断是否点击了提交按钮
//判断是否登录
if(empty($this->userid)){ //如果useid为空,则直接退出。($this指类本身,是由attachments类在构造函数制定的。)
exit('0');
}
既然是判断了userid为空就退出,那我们无法上传缩略图,肯定是被判断为空了。我们把$this->userid输出一下看看。
输出$this->userid值
从图中可以看出,这里输出的是1,也就是说$this->userid是为1的,1肯定不是空值了。那怎么会出现退出现象了呢。我们再换一个方法测试,看看
if(empty($this->userid)){
exit('0');
}
这句话是否执行了。
//判断是否登录
if(empty($this->userid)){
echo '';
exit('0');
} else{
echo '';
}
判断是否执行empty($this->userid)
如图所示
我们看到,程序确实执行了,跳出的动作。看来火狐核心的浏览器还是把“1”当成了empty来处理,所以导致了,phpcms V9在使用火狐核心的浏览器时,后台无法上传缩略图的现象。
新闻资讯 更多
- 【建站知识】查询nginx日志状态码大于400的请求并打印整行04-03
- 【建站知识】Python中的logger和handler到底是个什么?04-03
- 【建站知识】python3拉勾网爬虫之(您操作太频繁,请稍后访问)04-03
- 【建站知识】xpath 获取meta里的keywords及description的方法04-03
- 【建站知识】python向上取整以50为界04-03
- 【建站知识】scrapy xpath遇见乱码解决04-03
- 【建站知识】scrapy爬取后中文乱码,解决word转为html 时cp1252编码问题04-03
- 【建站知识】scrapy采集—爬取中文乱码,gb2312转为utf-804-03