ECSHOP编辑器Fckeditor上传图片中文名称乱码的解决方法

2016-06-13 13:05 来源:www.chinab4c.com 作者:ecshop专家

中文名乱码是因为: FCKeditor使用UTF-8编码, 自己机子比如是Windows系统 文件名使用的是GBK编码, 在上传中需要,改下编码,从UTF-8到GBK ==>第一个方法,转码思路,要修改两个文件,第一个文件: .\fckeditor\editor\filemanager\connectors\php\commands.php 文件 里面有一个 FileUpload 函数: move_uploaded_file( $oFile['tmp_name'], $sFilePath ) ; 改为 move_uploaded_file( $oFile['tmp_name'], iconv("utf-8","gbk",$sFilePath) ) ; ---------- 第二个文件: .\fckeditor\editor\filemanager\connectors\php\util.php 文件 找到 ConvertToXmlAttribute 函数: 将:return ( utf8_encode( htmlspecialchars( $value ) ) ) ; 修改为:return iconv("GBK", "UTF-8", htmlspecialchars( $value ));       第二个方法,修改上传文件的名字: 需要修改如下: 在 .\fckeditor\editor\filemanager\connectors\php\commands.php 文件中 找到 $sFileName = $oFile['name'] ;   修改为   $string = 'abcdefghijklmnopqrstuvwxyz0123456789';   $rand = '';   for ($x=0;$x<6;$x++){    mt_srand();    $rand.= substr($string,mt_rand(0,strlen($string)-1),1);   }   $sFileName = date('YmdHis').$rand.".".strtolower(array_pop(explode(".",$oFile['name'])));