fckeditor for php 上传图片文件名中文乱码,中文文章乱码

转载请注明来源:https://www.cnblogs.com/hookjc/

中文名乱码是因为:
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( $val ) ) ) ;

修改为:return iconv("GBK", "UTF-8", htmlspecialchars( $val ));

==>第二个思路,修改上传文件的名字:

需要修改如下:

在 .\fckeditor\editor\filemanager\connectors\php\commands.php 文件中

找到 FileUpload 函数:将 $sFileName = $oFile['name'];

修改如下:

//--------------------------------------------------------------
   //修正上传文件中文乱码方法之二:(修改上传文件的名字)
   $sFileName = "sda.php";
   $sOriginalFileName = $sFileName;
   $sExtension = s str($sFileName, (strrpos($sFileName, '.') + 1));//找到扩展名
   $sExtension = strtolower($sExtension);
   $sFileName = date("YmdHis").rand(100, 200).".".$sExtension;
//--------------------------------------------------------------

来源:python脚本自动迁移

posted @ 2020-06-29 10:19  jiangcheng_15  阅读(124)  评论(0编辑  收藏  举报