首页 > 语言 > PHP > 正文

网页编辑器fckeditor php上传文件重命名的设置

2024-07-21 02:53:27
字体:
来源:转载
供稿:网友
我使用的fckeditor版本是fckeditor2.6.4. fckeditor默认上传文件不没有重命名的,这样的话就很麻烦,有时上传中文的文件或者名称重复的文件就很恼火。
 
这里经过摸索:找到了一个重命名的方法,大家看看好不好使。 
首先:我希望上传的文件根据日期来组织文件夹 
请修改editor/editor/filemanager/connectors/php文件夹下的:config.php文件 
找到如下的内容: 
// Path to user files relative to the document root. 
$Config['UserFilesPath'] = 
修改为: 
// Path to user files relative to the document root. 
$Config['UserFilesPath'] = '/uploadfiles/'.date("Ym")."/" ; 
这样上传的文件就按照日期存放了。 
其次:重命名 
请修改该文件夹下的io.php文件 
找到: 
// Do a cleanup of the file name to avoid possible problems 
function SanitizeFileName( $sNewFileName ) 

global $Config ; 
$sNewFileName = stripslashes( $sNewFileName ) ; 
// Replace dots in the name with underscores (only one dot can be there... security issue). 
if ( $Config['ForceSingleExtension'] ) 
 $sNewFileName = preg_replace( '///.(?![^.]*$)/', '_', $sNewFileName ) ; 
// Remove / / | : ? * " < > 
$sNewFileName = preg_replace( '/////|///|//||//:|//?|//*|"|<|>/', '_', $sNewFileName ); 
return $sNewFileName ; 

修改为: 
// Do a cleanup of the file name to avoid possible problems 
function SanitizeFileName( $sNewFileName ) 

global $Config ; 
$sNewFileName = stripslashes( $sNewFileName ) ; 
// Replace dots in the name with underscores (only one dot can be there... security issue). 
if ( $Config['ForceSingleExtension'] ) 
 $sNewFileName = preg_replace( '///.(?![^.]*$)/', '_', $sNewFileName ) ; 
$sExtension = substr( $sNewFileName, ( strrpos($sNewFileName, '.') + 1 ) ) ; 
$sNewFileName = my_setfilename().'.'.$sExtension; 
return $sNewFileName ; 

function my_setfilename(){ 
$gettime = explode(' ',microtime()); 
$string = 'abcdefghijklmnopgrstuvwxyz0123456789'; 
$rand = ''; 
for ($x=0;$x<12;$x++) 
 $rand .= substr($string,mt_rand(0,strlen($string)-1),1); 
return date("ymdHis").substr($gettime[0],2,6).$rand; 

这样上传的文件就可以实现重命名了。

注:相关教程知识阅读请移步到编辑器频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表