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


							shopex玛索模板
							人气:358
						
							名鞋库shopex模板|鞋子商城
							人气:718
						
							中英俄多语言代购国内商
							人气:908
						
							ecshop礼品网模板
							人气:1750
						
							英文卖包包衣服商城|ecs
							人气:5353
						
							乐到家手机数码商城|ecs
							人气:548