DedeCMS图集上传图片报错,FILEID:X 错误处理办法

时间:2011-09-10 16:27:13 

     有几个朋友反应,在使用系统的图集功能上传图片时会提示FILEID:X错误,缩略图显示为红色Error
本地安装了一下新版的V57GBK,测试了一番,没有发现该问题,登录到一个朋友提供的存在该问题的
站点后台,注意到为UTF-8版本,遂详细测试了一番,查看了管理目录下的swfupload.php做了几个断点
测试,在生成缩略图那里找到了问题的原因。
       查看一下你的include/common.inc.php 的文件格式UTF-8编码的朋友,注意将格式调整为UTF-8 无
BOM格式,GBK编码的朋友,注意将格式调整为ANSI(使用NotePad++,菜单栏有一格式菜单,打开即
可调整文件格式,当然也可以选择DW,Editeplus 云云)
       另外需要注意一点,如果语言编码使用的为UTF-8编码的朋友,一定注意,不要用记事本打开修
改保存任何系统文件。
       搜索论坛的时候,发现有些已经解决的朋友分享了解决办法,其中天若千颖 给出了一个有BOM文
件检测的小工具:本文内容下半部分有相关说明、附件。
       办法总比问题多,遇到问题,我们可以先从论坛入手,解决问题,咱们大家互相分享!

——by:织梦的鱼

如图,一些朋友遇到类似的情况,上传图片是凸显错误提示,但是在附件管理里面能够看到已经上传成功的图片文件。






现在提供一个缩略图修复文件,保存为a.php,放在网站根目录访问下就可以了。

s:如果在访问a.php的时候报错如:
PHP Fatal error: Allowed memory size of 134217728 bytes exhausted
那就试用下面的修改版检查出有bom的文件自己修改吧。

  <?php
//remove the utf-8 boms
//by magicbug at gmail dot com
if (isset($_GET['dir'])){ //config the basedir
 $basedir=$_GET['dir'];
}else{
 $basedir = '.';
}
$auto = 1;
checkdir($basedir);
echo ("<br><br><font color=green>completed!</font><br>");
function checkdir($basedir)
{
 if ($dh = opendir($basedir))
 {
  while (($file = readdir($dh)) !== false)
  {
   if ($file != '.' && $file != '..')
   {
    if (!is_dir($basedir."/".$file))
    {
     //echo "filename: $basedir/$file ";
     checkBOM("$basedir/$file");
    }
    else
    {
     $dirname = $basedir."/".$file;
     checkdir($dirname);
    }
   }
  }
  closedir($dh);
 }
 
}
function checkBOM ($filename) {
 global $auto;
 $contents = file_get_contents($filename,NULL,NULL,0,10);
 $charset[1] = substr($contents, 0, 1);
 $charset[2] = substr($contents, 1, 1);
 $charset[3] = substr($contents, 2, 1);
 if (ord($charset[1]) == 239 && ord($charset[2]) == 187 && ord($charset[3]) == 191) {
  if ($auto == 1) {
   //$rest = substr($contents, 3);
   //rewrite ($filename, $rest);
   echo ($filename."--------"."<font color=red>BOM found</font><br>");
  } else {
   //return ("<font color=red>BOM found.</font>");
  }
 }
 //else return ("BOM Not Found.");
}
function rewrite ($filename, $data) {
 $filenum = fopen($filename, "w");
 flock($filenum, LOCK_EX);
 fwrite($filenum, $data);
 fclose($filenum);
}
?>   

附件下载:缩略图修复文件.rar (.69 KB)

参考来源:http://blog.csdn.net/cnfixit/archive/2010/09/15/5886347.aspx


标签:dedecms,上传,错误
0
投稿

猜你喜欢

  • Ubuntu中添加应用程序快速启动器的方法

    2023-10-16 21:10:33
  • Vista 下支付宝控件、证书的相关使用问题

    2008-06-16 12:14:00
  • 不登陆QQ 做个html文件查看好友在线状态

    2008-01-19 13:48:00
  • 抗DoS、DDoS防火墙产品大检阅

    2009-12-24 15:01:00
  • 如何完美利用百度产品线来做SEO

    2012-04-25 20:54:03
  • Web网站的性能测试工具

    2008-04-01 09:25:00
  • 申请Goolge AdSense前要注意的8件事

    2007-10-09 20:12:00
  • 整合搜索与SEO

    2007-10-11 14:03:00
  • 做站内容的选择与创意

    2008-05-30 12:52:00
  • 如何实现Win2003服务器负载平衡

    2007-10-06 22:54:00
  • 设置网站404页面的正确做法

    2009-01-12 15:17:00
  • 评测地方门户网站的七大指标

    2010-03-28 13:49:00
  • 微软:“黑屏”反盗版 对正版用户是一种保护

    2010-03-08 09:10:00
  • 万维网之父:我清楚记得李彦宏十年前的演讲

    2008-04-25 22:45:00
  • 草根站长常用的几种主流网站推广方法总结

    2009-03-04 15:42:00
  • 获取关键词大流量 做好SEO方法中五大要点

    2009-02-17 11:38:00
  • 阿里云服务器 jdk1.8 安装配置教程

    2023-06-27 23:06:44
  • 常见设备和系统上配置DNS的方法

    2010-01-16 19:08:00
  • 六个WordPress实用的评论回复通知插件下载

    2010-03-21 08:40:00
  • V5shop引领独立网商成功的五个层次

    2009-11-07 14:35:00
  • asp之家 网站运营 m.aspxhome.com