一、简要描述
$filer=DoTranFile($file,$file_name,$file_type,$file_size,$classid,$ecms=0);
Ecms版本:6.0
参数:
$file
$file_name 文件名包括拓展名 例如:image.jpg
$file_type 文件类型描述 例如:image/pjpeg
$file_size 文件大小 单位KB
$classid 栏目ID
$ecms=0 可选 错误信息提示 遵循 e/class/connect.php function printerror()
函数定义位置:e/class/connect.php
返回值:成功返回数组 失败跳出程序又printerror()打印错误
——————————————————–
数组成员key 解释
filetype:文件类型 例如:.jpg
insertfile:文件名无拓展名 例如:img
filename:文件名包括拓展名 例如:img.jpg
filepath:文件目录 例如:2010-05-27
savepath:文件硬盘目录 例如:D:\php\***\d/file/classfile/2010-05-27/
url:文件网站绝对目录 例如:/d/file/classfile/2010-05-27/name.jpg
name: 缩略图(其实没有生成缩略图只是给了这个路径) D:\php\****\d/file/classfile/2010-05-27/small + name
yname:D:\php\***\d/file/classfile/2010-05-27/name.jpg
tran:1
filesize:文件大小 单位KB
二、函数源代码
//上传文件
function DoTranFile($file,$file_name,$file_type,$file_size,$classid,$ecms=0){
global $public_r,$class_r,$doetran;
//文件类型
$r[filetype]=GetFiletype($file_name);
//文件名
$r[insertfile]=ReturnDoTranFilename($file_name,$classid);
$r[filename]=$r[insertfile].$r[filetype];
//日期目录
$r[filepath]=FormatFilePath($classid,$mynewspath,0);
$filepath=$r[filepath]?$r[filepath].'/':$r[filepath];
//存放目录
$fspath=ReturnFileSavePath($classid);
$r[savepath]=ECMS_PATH.$fspath['filepath'].$filepath;
//附件地址
$r[url]=$fspath['fileurl'].$filepath.$r[filename];
//缩图文件
$r[name]=$r[savepath]."small".$r[insertfile];
//附件文件
$r[yname]=$r[savepath].$r[filename];
$r[tran]=1;
//验证类型
if(CheckSaveTranFiletype($r[filetype]))
{
if($doetran)
{
$r[tran]=0;
return $r;
}
else
{
printerror('TranFail','',$ecms);
}
}
//上传文件
$cp=@move_uploaded_file($file,$r[yname]);
if(empty($cp))
{
if($doetran)
{
$r[tran]=0;
return $r;
}
else
{
printerror('TranFail','',$ecms);
}
}
DoChmodFile($r[yname]);
$r[filesize]=(int)$file_size;
return $r;
}
//远程保存忽略地址
function CheckNotSaveUrl($url){
global $public_r;
if(empty($public_r['notsaveurl']))
{
return 0;
}
$r=explode("\r\n",$public_r['notsaveurl']);
$count=count($r);
$re=0;
for($i=0;$i<$count;$i++)
{
if(empty($r[$i]))
{continue;}
if(stristr($url,$r[$i]))
{
$re=1;
break;
}
}
return $re;
}






