phpcmsv9升级后台无法上传缩略图的原因分析

2022-08-20    分类: 网站建设

phpcms V9 是目前国内使用人数最多的一款开源免费的CMS系统,正是由于他的免费性,开源性,以及其自身的功能性比较强大,所以倍受许多站长朋友们的亲来,以及许多的成都网站建设公司的喜欢。phpcms也为了完善程序漏洞,官方人员会经常性的发布一些程序补丁,让用户使用。防止一些特殊群体,通过程序的漏洞去攻击别人的网站。不过这次更新了phpcms v9之后,发现网站后台上传缩略图的时候,会出现无法上传的现象,浏览器提示undefined错误,经过一方面的测试,发现这个错误,只有一些火狐核心的浏览器才会出现,IE,360这种的IE核心浏览器上传一切正常。这是什么原因造成的呢,我们通过程序去排查一下为何后台无法上传缩略图,并出现undefined的错误。

<a href=成都网站建设中phpcms v9升级,后台无法上传缩略图,提示undefine。" src="/upload/ad_content/xuanchuantu-1.jpg" />

一、phpcms V9 后台无法上传缩略图的处理方法

首先打开网站程序路径中的,phpcms---modules----attachment----attachments.php文件,找到attachments.php文件中的50行---53行代码,这里有一段判断是否登录的程序,我们把这段话删掉就可以了。如图所示:

网站程序代码图示

通过删除非常简单的一段话,就能解决类似火狐核心的浏览器,后台无法上传缩略图的错误。接下来我们详细分析为什么这句话,就会导致后台无法上传缩略图呢,以后如果大家遇到程序上面的错误,也可以通过下面的方法去分析,一定要学会灵活使用,程序都是死的,而我们程序员的思维是灵活的。

注:如果您对为何会出现无法上传缩略图错误不感兴趣,以下内容均可略过不看!

二、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 '<script language=\"javascript\">alert(15564);</script>';
exit('0');
} else{
echo '<script language=\"javascript\">alert(33333);</script>';
}
如图所示:

判断是否执行empty($this->userid)图示

我们看到,程序确实执行了,跳出的动作。看来火狐核心的浏览器还是把“1”当成了empty来处理,所以导致了,phpcms V9在使用火狐核心的浏览器时,后台无法上传缩略图的现象。

您可能还对以下文章感兴趣:

成都网站制作phpcmsV9文件上传大小限制修改完整版

成都网站制作phpcmsV9二级下拉分类调用

成都网站建设,phpcmsV9联动菜单的实现方法

成都网站制作,ecshop后台ajax无刷新修改商品数量原理分析

当前标题:phpcmsv9升级后台无法上传缩略图的原因分析
文章URL:https://www.cdcxhl.com/news4/191554.html

成都网站建设公司_创新互联,为您提供外贸网站建设定制网站做网站微信小程序微信公众号网站排名

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

网站托管运营