国内最全IT社区平台 联系我们 | 收藏本站
华晨云阿里云优惠2
您当前位置:首页 > 程序人生 > 随笔 > phpcms上传图片提示undefined或者空白提醒

phpcms上传图片提示undefined或者空白提醒

来源:程序员人生   发布时间:2015-05-05 17:16:33 阅读次数:3861次
关于phpcms后台上传图片出错的问题,之前我也遇到过,就是phpcms上传图片提示undefined或者空白提醒,不知道怎么处理,百度一下后,结合自己的经验给大家一个总结。出错直接弹出一个空白的对话框,如下图所示:



解决方法一:
        修改php.ini文件(此方法仅适用于VPS或者独立服务器,不适用于虚拟主机,这里仅供参考)。把extension=php_zip.dll前面的;号去掉(先确保php环境包下面的ext目录有php_zip.dll文件)。
解决方法二:
  修改文件phpcms/libs/classe/attachemt_class.php
  把 $this->upload_func = ‘copy’;
  1. $this->upload_func = ‘copy’; 
  2. 修改为 $this->upload_func = ‘move_uploaded_file’; 

  修改为 $this->upload_func = ‘move_uploaded_file’;
  但是需要注意,这种方法可能会造成不能自动远程保存图片。
解决方法三:
   修改文件phpcms\modules\attachment\attachments.php
大概在51行:
  1. if(emptyempty($this->userid)){ 
  2.  修改为:if(emptyempty($_POST['userid'])){
      原理:因为在上传图片提交时 $this->userid一定为空,但在调用时用到了$attachment->set_userid($_POST['userid']);
而$_POST['userid'] 即是userid的数据。因此将$this->userid改成$_POST['userid']即可。早期版本phpcms的 attachments.php中就是$_POST['userid'],所以如果您怕修改错了文件,这里也可以下载早前版本的 attachments.php进行替换。
生活不易,码农辛苦
如果您觉得本网站对您的学习有所帮助,可以手机扫描二维码进行捐赠
程序员人生
------分隔线----------------------------
分享到:
------分隔线----------------------------
关闭
程序员人生