帝国CMS实现上传附件名为源文件名+随机码

 更新时间:2015年12月30日 16:43  点击:1341

如何更改帝国CMS上传附件名为源文件名+随机码

原文件名为         测试下载.rar
上传后,自动更名为 测试下载_9df430c26057400fca4a07bec9db3b62.rar

上传以下图片:



修改方法:

第一步:打开文件  /e/class/connect.php

查找:

$r[filetype]=GetFiletype($file_name);

在下面一行加入以下代码:

$filename2=str_replace($r[filetype], '', $file_name); //获得去掉后缀的文件名
	$mytype = array (".txt", ".rar", ".zip", ".gif", ".jpg", ".png", ".swf");//定义需要保留原名的文件类型

继续查找:

$r[filename]=$r[insertfile].$r[filetype];

修改为:

if(in_array($r[filetype],$mytype)){
$r[filename]=$filename2."_".$r[insertfile].$r[filetype];//将真实文件名加在随机码的前面中间以_分隔
}
else
{
$r[filename]=$r[insertfile].$r[filetype];
}

修改完成,搞定。

说明:

$mytype = array (“.txt”, “.rar”, “.zip”);

这一句就是定义哪些文件类型需要加上源文件名的。


也可以在文件名前面加上指定名称,如网站域名

if(in_array($r[filetype],$mytype)){
$r[filename]="16css.com_".$filename2."_".$r[insertfile].$r[filetype];//将真实文件名加在随机码的前面中间以_分隔
}
else
{
$r[filename]=$r[insertfile].$r[filetype];
}


相关文章:

帝国CMS 上传附件保持原文件名(只有原文件名,没有随机码)

[!--infotagslink--]

相关文章

  • 帝国CMS实现上传附件名为源文件名+随机码

    如何更改帝国CMS上传附件名为源文件名+随机码原文件名为 测试下载.rar上传后,自动更名为 测试下载_9df430c26057400fca4a07bec9db3b62.rar上传以下图片:修改方法:第一...2015-12-30