dedecms图片上传MemberUploads函数分析
2011-12-03 12:12 来源:www.chinab4c.com 作者:dedecms专家
我们研究dedecms二次开发。就必须研究dedecms的一些基本的流程。dedecms存在很多的文件上传的地方。一般都需要调用MemberUploads函数。我们今天就结合dedecms会员中心的头相上传功能。来谈谈dedecms的MemberUploads函数。
首先我们看到include/helpers/upload.helper.php文件。
function MemberUploads($upname,$handname,$userid=0,$utype='image',$exname='',$maxwidth=0,$maxheight=0,$water=false,$isadmin=false)
首先我们介绍下以下参数
1:$upname这个是文件上传的input type=file对应的哪个名称
2:$handname 这个是图片所存储的文件夹名称
3:$userid 这个是默认会员的ID
4:$utype这个是文件类型,指的是上传的文件类型
5:$exname这个是文件上传后的名称。如果没有指定的名称,那么将通过随即生成
6:$maxwidth和$maxheight两个参数是指上传后图片尺寸
7:$water和 $isadmin,一个是否加水印,一个操作是否是管理员。
首先我们看if(!is_dir($cfg_basedir.$cfg_user_dir."/$userid"))
{
MkdirAll($cfg_basedir.$cfg_user_dir."/$userid", $cfg_dir_purview);
CloseFtp();
}
如果要上传的文件所在的文件夹不存在。他会自动的尝试建立
最主要的就是生成的文件名的规则。
if($exname=='')
{
$filename = $cfg_user_dir."/$userid/".dd2char($nowtme.'-'.mt_rand(1000,9999)).'.'.$sname;
}
else
{
$filename = $cfg_user_dir."/{$userid}/{$exname}.".$sname;
}
这个是最终返回的文件名。至于传文件的过程,我们不会多做讲述,因为哪个是php的基本操作。
最近更新
常用插件
- ecshop二次开发首页显示购
ecshop二次开发首页显示购买记录插件,用图文的方式,来处理在首页显示...
- ecshop 匿名下单自动注册会
ecshop 匿名下单自动注册会员...
- ecshop打印快递发货单
ecshop打印快递发货单,这个问题是很常见的问题。在发货完成之后,有些...
- ecshop二次开发直接优惠现
ecshop二次开发促销售功能插件,主要是扩展了ecshop促销功能,增加了更...
- ecsho成本利润统计分析插件
最近在二次开发ecshop过程中,很多朋友要求一款分析 ecshop成本和利润插...