使用fck的朋友可能会碰这样一个情况就是如果上你的文件名为英文字母是没有任何问题,如果上传的是中文汉字就会出现中文名乱码了,下面我来给大家分析与介绍解决方法。
主要原因是fck中的编(utf-8)码和本地的编码(gbk)环紧不一致导致的,修改如下5个文件可以解决
更改FileUpLoad函数 ckeditor/" target="_blank">fckeditoreditorfilemanagerconnectorsphpcommands.php
在文件中找到以下代码:
| 代码如下 | 复制代码 |
|
// Get the extension. |
|
在其后加上一句:
| 代码如下 | 复制代码 |
|
$sFileName = strtotime('now').'.'.$sExtension; 立即学习“PHP免费学习笔记(深入)”; |
|
这样文件名就是 当前时间戳+后缀名了。既解决了中文乱码,也解决了文件重名
另一种解决办法,保留中文名
文件4:fckeditoreditorfilemanagerconnectorsphpcommands.php
找到
| 代码如下 | 复制代码 |
|
function FileUpload( $resourceType, $currentFolder, $sCommand ){ 。。。 找到 //move_uploaded_file( $oFile['tmp_name'], $sFilePath ) ; move_uploaded_file( $oFile['tmp_name'], iconv("utf-8","gbk",$sFilePath)); } |
|
对文件名$sFilePath转码。
文件5:fckeditoreditorfilemanagerconnectorsphputil.php
找到
| 代码如下 | 复制代码 |
|
function ConvertToXmlAttribute( $value ){ 。。。 找到 //return ( utf8_encode( htmlspecialchars( $value ) ) ) ; return iconv("GBK", "UTF-8", htmlspecialchars( $value )); } |
|
对内容进行转码。
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号