dede织梦图片集上传时提示错误信息“(FILEID:1|2|
网上看到很多朋友遇到使用织梦程序一段时间后,发现上传图集时候老是失败,提示提示FILEID:X错误,缩略图显示为红色Error下面截图错误:
	
这问题今天也让我头疼了半天,好好的怎么就出现这问题了,我最近好像没修改过啥文件了,最后找资料整理出了解决办法,分享给遇到该问题的朋友:分两步:
第一步:查看一下你的include/common.inc.php 的文件格式UTF-8编码的朋友,注意将格式调整为UTF-8 无BOM格式,GBK编码的朋友,注意将格式调整为ANSI(使用NotePad++,菜单栏有一格式菜单,打开即可调整文件格式,当然也可以选择DW,Editeplus 云云)
第二步:给大家提供一个缩略图修复文件,保存为a.php,放在网站根目录访问下就可以了。
代码(红色部分)如下:
	<?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);
	function checkdir($basedir){
	if ($dh = opendir($basedir)) {
	  while (($file = readdir($dh)) !== false) {
	   if ($file != '.' && $file != '..'){
	    if (!is_dir($basedir."/".$file)) {
	     echo "filename: $basedir/$file ";
	     echo checkBOM("$basedir/$file")." <br>";
	    }else{
	     $dirname = $basedir."/".$file;
	     checkdir($dirname);
	    }
	   }
	  }
	closedir($dh);
	}
	}
	function checkBOM ($filename) {
	global $auto;
	$contents = file_get_contents($filename);
	$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);
	   return ("<font color=red>BOM found, automatically removed.</font>");
	  } 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);
	}
	?>
	将代码另存为.php,放在网站根目录下运行该文件就可以了。
	运行完毕后刷新后台,上传图片,就成功了!
运行后记得更新下缓存:
	
	
	如果还是不能解决,参见《DedeCMS图集上传图片出现FILEID:X报错终极解决方法》
上一篇:解决DEDECMS Call to undefined function dede_htmlspecialchar 下一篇:dede图集后台上传图片报错 提示红色FILEID错误的处
