php+CKFinder上传中文名文件乱码问题的解决方法

上传中文名文件乱码问题

在ckfinder/config.php中找到如下一段配置代码:

 

 代码如下 复制代码
/*
If you have iconv enabled (visit http://php.net/iconv for more information),
you can use this directive to specify the encoding of file names in your
system. Acceptable values can be found at:
http://www.gnu.org/software/libiconv/

Examples:
$config['FilesystemEncoding'] = 'CP1250';
$config['FilesystemEncoding'] = 'ISO-8859-2';
*/
$config['FilesystemEncoding'] = 'UTF-8';

将UTF-8修改为GB2312,上传后文件名正确了,但在CKEditor中显示的链接出现乱码,因为CKEditor所在页面使用的字符集是UTF-8,未去细究如何解决这个问题,采用了文件重命名的方案去替代解决。

上传文件重命名

修改ckfindercoreconnectorphpphp5CommandHandlerFileUpload.php

找到以下代码


 代码如下 复制代码
if ($sFileName != $sUnsafeFileName) {
  $iErrorNumber = CKFINDER_CONNECTOR_ERROR_UPLOADED_INVALID_NAME_RENAMED;
}

在这段代码之后添加


 代码如下 复制代码
$sExtension=CKFinder_Connector_Utils_FileSystem::getExtension($sFileName);
$sFileName=date('YmdHis').'.'.$sExtension;

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索文件
代码
wifi中文名乱码 解决、上传文件中文名乱码、ckfinder 中文乱码、ckfinder 乱码、ckfinder java 乱码,以便于您获取更多的相关知识。

时间: 2024-09-20 17:53:34

php+CKFinder上传中文名文件乱码问题的解决方法的相关文章

CKFinder上传中文名文件乱码

解决办法 上传文件重命名 修改ckfindercoreconnectorphpphp5CommandHandlerFileUpload.php 找到以下代码  代码如下 复制代码 if ($sFileName != $sUnsafeFileName) {   $iErrorNumber = CKFINDER_CONNECTOR_ERROR_UPLOADED_INVALID_NAME_RENAMED; } 在这段代码之后添加  代码如下 复制代码 $sExtension=CKFinder_Conn

jsp fckeditor 上传中文图片乱码问题的解决方法_网页编辑器

经过我修改ConnectorServlet.java和SimpleUploaderServlet.java两个文件,重新生成fckeditor-java-2.3.jar包,要解决所有的乱码问题,有3部要修改1.修改Web容器的字符编码,如果Web容器用的是Tomcat,则修改conf/server.xml文件,在两个Connector中添加"URIEncoding="utf-8"",我这里用的是utf-8编码,所以修改成utf-8,若项目是gb2312编码,则设置为

win2008 iis7 上传大文件限制的真正解决办法_win服务器

iis7 上传大文件限制的真正解决办法 修改IIS_schema.xml这个文件要先获得这个文件的控制权; 进入目录C:\Windows\System32\inetsrv\config\schema,修改文件IIS_schema.xml 权限: 进入IIS_schema.xml文件权限修改,选择"高级" 选择"所有者" 选中 administrators 确定 再进入权限编辑,修改administrators 完全控制. 再去掉IIS_schema.xml的只读属性

PHP在Windows IIS上传的图片无法访问的解决方法_win服务器

PHP在Windows IIS上传的图片无法访问的解决方法 首先登录到网站后台进行了测试发现上传的图片在确实浏览器打不开且出现了无法访问的错误信息:" 401 - 未 授权: 由于凭据无效,访问被拒绝." 然后又测试了该服务器上其他几个php项目发现也出现了一样的错误: 图片上传成功,但浏览器没有权限访问.因为测试的几个php系统是不一样的,有thinkphp,wordpress,百度ueditor编辑器. 所以这几个系统同时出现问题的概率实在是太小了,所以基本上排除了程序的bug,且

joomla jce editor 解决上传中文名文件失败问题_php技巧

不论是JCE还是CKEDITOR,都没解决中文名文件的问题,要么上传失败,要么传上去了中文名不能被web访问.相比之下,JCE更加人性化,比如文件上传后默认被选中,不需用户在那么小的弹出窗口去上下翻搜寻刚刚上传的文件.研究了下JCE的源码,改掉保存文件名的方式,使用纯数字来作为文件名. 到joomla安装的目录,找到components/com_jce/editor/extensions/browser/file.php,修改 1017 - 1020 行: 复制代码 代码如下: // strip

asp文件上传错误'800a0005'的解决方法

一.治标方法: IE7以上版本其实把文件上传是否发送完整的本地路径做成一个选项,在IE的Internet选项中可以设置.如下图: 1.Internet安全选项: 2.完整路径选项设置: 由于默认是禁用的,所以会出现问题,把它启用就可以解决问题了.但这是治标的方法,如果网页是面向普通用户的,你不可能要求所有用户都来改变这个设置. 二.治本方法: 治本的方法只能靠改程序了.对于图片预览的,目前我还没有很好的方法获取到图片的本地完整路径,所以只能通过判断浏览器的版本,如果是IE7和FireFox3的版

解决dotproject中文名文件下载乱码问题的解决方法_其它CMS

[问题] 文件管理,上传中文文件名的文件,下载时候文件名出现乱码. [解决] 还是编码问题,需要转码. 打开根目录下的fileviewer.php文件,找到一下代码: 复制代码 代码如下: <?php -- header('MIME-Version: 1.0'); header( 'Pragma: '); header( 'Cache-Control: public'); header( 'Content-length: '.$file['file_size'] ); header( 'Cont

log4j日志文件乱码问题的解决方法

 近日在AIX上用log4j打印日志,出现乱码,经过努力解决问题.   症状:在默认语言非中文(或者说默认语言不支持中文的)的Windows.Linux.Unix上,用log4j打印日志,出现乱码,常见的就是一堆问号.   解决方法: 如果是log4j.properties为配置文件,比如: log4j.appender.A1=org.apache.log4j.RollingFileAppender log4j.appender.A1.File=all.log 加入一行:   log4j.app

iOS上传github文件过大如何解决

问题描述 解决方案 二进制文件不应该传到github,如果非要传,需要拆包.