PbootCms默认的附件(图片)上传是重命名文件名的。
部分客户需要上传附件的过程中保留原有的文件名。那么就需要动手对PbootCms做一下适配。
打开文件:/core/function/file.php,搜索handle_upload方法,大约在247行。
// 处理并移动上传文件
function handle_upload($file, $temp, $array_ext_allow, $max_width, $max_height, $watermark)
{
// 定义主存储路径
$save_path = DOC_PATH . STATIC_DIR . '/upload';
$file = explode('.', $file); // 分离文件名及扩展
$file_ext = strtolower(end($file)); // 获取扩展
//@cms88 新增下面2行
unset($file[count($file)-1]); //抹掉文件后缀名数据
$original_name = implode('.',$file); //将抹掉后缀名的数组拼接成文件名
......
// 检查文件存储路径
if (! check_dir($save_path . '/' . $file_type . '/' . date('Ymd'), true)) {
return '存储目录创建失败!';
}
//@cms88 修改下面1行
$file_path = $save_path . '/' . $file_type . '/' . date('Ymd') . '/' . $original_name . '.' . $file_ext;
......
}你电脑上存放的附件文件名请不要有特殊字符或者空格。
你电脑上存放的附件文件名请不要有特殊字符或者空格。
你电脑上存放的附件文件名请不要有特殊字符或者空格。
重要的事情说三遍,如果你这样做了可能会引来八阿哥。
为了方便照顾一些对代码没兴趣的土豪,特地提供了一个已经处理好的代码包,土豪购买后直接替换对应版本到根目录即可。
该修改不区分mysql、sqlite,均可使用。

CMS博客 原创,未经授权禁止转载、摘编、复制或建立镜像。
文章评论(审核通过可见)