返回   CHF站长论坛 > 特色讨论区 > ExpressionEngine交流专栏

ExpressionEngine交流专栏 ExpressionEngine是一个基于PHP的非常强大灵活的CMS。[官方]

双至强仅二千,企商在线,最早租用商 魔兽世界私服 魔兽世界私服 此文字广告位招租 天龙八部私服 传奇世界私服 新开传奇私服
传奇私服 热血江湖私服 全球最新的创意科技产品 魔域私服 魔域私服 新开传奇私服 魔域私服 传奇私服
发表新主题 回复
 
主题工具 主题评分 显示模式
旧 2006-12-23, 13:28   #1 (页面定位)
kernel
 
注册日期: 2005-11-14
帖子: 40
kernel 是普普通通的会员
默认 ee上传文件自动重命名代码修改

打开
system/cp/cp.publish.php

找(只有一处)

$UP->set_max_width($query->row['max_width']);
$UP->set_max_height($query->row['max_height']);
$UP->set_max_filesize($query->row['max_size']);
$UP->set_allowed_types(($SESS->userdata['group_id'] == 1) ? 'all' : $query->row['allowed_types']);

if ( ! $UP->upload_file())
{
return $UP->show_error();
}

global $UL; $UL = $UP;

if ($UL->file_exists == TRUE)
{
return $this->file_exists_warning();
}

后面加

$UP->new_name = time().'.'.trim(substr(strrchr($UP->file_name, '.'), 1));

if(rename($UP->upload_path.$UP->file_name, $UP->upload_path.$UP->new_name))
{
$UP->file_name = $UP->new_name;
}

=====================
说明: 这个改动也可以通过extensions实现 但是官方在这块没提供hook,可以自己加个自定义hook,同样要改这个地方的代码还要数据库多插条记录。。所以就直接改了。。这个改动没什么后遗症,只是帮自动命名一下,不用时直接覆盖回原文件。
$UP->new_name = time() 是按上传时间重命名 精确到秒 只考虑到少数人使用情况 多人可能重名 请加随机数。。

另外:上传表单上还可以加上 自动重命名(可选)的选项 大概可以通过官方的upload_form的hook实现extension 应该不难 需要的自己改把。。
kernel 当前离线   回复时引用此帖
旧 2006-12-23, 17:06   #2 (页面定位)
DKEN©
 
DKEN 的头像
 
注册日期: 2006-08-07
住址: 化州-湛江-东莞
帖子: 2595
DKEN 有着人尽皆知的贡献和荣耀DKEN 有着人尽皆知的贡献和荣耀DKEN 有着人尽皆知的贡献和荣耀DKEN 有着人尽皆知的贡献和荣耀DKEN 有着人尽皆知的贡献和荣耀DKEN 有着人尽皆知的贡献和荣耀DKEN 有着人尽皆知的贡献和荣耀DKEN 有着人尽皆知的贡献和荣耀DKEN 有着人尽皆知的贡献和荣耀DKEN 有着人尽皆知的贡献和荣耀DKEN 有着人尽皆知的贡献和荣耀
默认

支持...谢谢
DKEN 当前离线   回复时引用此帖
旧 2006-12-25, 12:24   #3 (页面定位)
禾火木风
 
禾火木风 的头像
 
注册日期: 2006-03-15
帖子: 2059
禾火木风 是一个将要出名的人禾火木风 是一个将要出名的人禾火木风 是一个将要出名的人禾火木风 是一个将要出名的人禾火木风 是一个将要出名的人禾火木风 是一个将要出名的人禾火木风 是一个将要出名的人禾火木风 是一个将要出名的人禾火木风 是一个将要出名的人禾火木风 是一个将要出名的人
默认

喜欢
禾火木风 当前离线   回复时引用此帖
旧 2007-01-13, 20:35   #4 (页面定位)
Binning
 
Binning 的头像
 
注册日期: 2006-03-22
帖子: 153
Binning 是普普通通的会员
默认

没明白。纯支持下!


想更多了解奢侈品信息及时尚流行情报请访问:http://Www.Oimz.Com
Binning 当前离线   回复时引用此帖
回复

书签

标签

主题工具
显示模式 对此主题评分
对此主题评分:



所有时间均为北京时间。现在的时间是 03:14