首页 » 网站建设 » php上传图片逻辑技巧_帝国cms后台之解析上传图片

php上传图片逻辑技巧_帝国cms后台之解析上传图片

访客 2024-12-17 0

扫一扫用手机浏览

文章目录 [+]

1.上传的文件名字为file,即后台可以通过$_FILES['file']来获取文件内容

2.帝国cms默认采取的是form提交的办法来上传文件。

php上传图片逻辑技巧_帝国cms后台之解析上传图片

3.上传的文件域字段为:tmp_name,name,type,size,都可以通过$_FILES['file'][$varname]来访问

php上传图片逻辑技巧_帝国cms后台之解析上传图片
(图片来自网络侵删)

4.同时提交字段为:tranurl,no,classid,type,个中tranurl为远程文件的地址 ,即须要保存远程文件的时候调用须要将这个写上

5.然后调用e/admin/ecmseditor/ecmseditor.php里面的TranFile来上传数据的功能。



进行一些逻辑操作。
下面讲一下如何入库,这是我们终极的结果 ,然后上面的逻辑判断再给加上。

tranfrom://1来自编辑器上传

filetime://time(),当前韶光

filesize://文件大小,int

classid://

id://

cjid://采集id号

fpath://int类型

type://int类型,1上传图片,2上传flash,3上传多媒体,其他:上传附件,个中,3和其他,帝国cms并未实现,估计商业版的才会实现 。

modtype:// int 0信息,5公共,6会员,不传为其它

filename://字符串

no://文件别名,(真是一个奇葩的字段)

adduser://增加的用户

path://路径

pubid://

fstb://附件表

入库时会根据modtype的不同,进入不同的附件表

下面的详细的表名

modtype表名0 信息enewsfile_$fstb5 公共enewsfile_public6 会员enewsfile_member其他enewsfile_other

如果 modtype为0,则须要利用

GetInfoTranFstb($classid,$infoid,0);

这个方法,来调用得到fstb这个分表id号。

$filetype=GetFiletype($file_name)//得到文件后辍名。

CheckSaveTranFiletype($filetype)//得到是否是许可的

判断大小

开始上传

上传逻辑开始

最紧张的是根据classid以及id得到文件的存放路径,然后就可以直接用move_uploaded_file所文件放到那个地方了。

得到文件扩展名GetFiletype($_FILES['file']['name'])//返回$r[filetype] 扩展名,如.jpg

得到插入的文件名ReturnDoTranFilename($_FILES['file']['name'],$classid)//返回$r[insertfile]//得到文件名称,如sdlfkjsldfjsldfjoiwelwj2938223l2

组合成文件名$r[insertfile].$r[filetype]//得到文件名返回$r[filename]

上传逻辑结束

入库

入库后,再进行是否得到缩略图getsmall和添加水印getmark,操作;

如果须要添加水印和获取缩略图,会先后调用GetMySmallImg和GetMyMarkImg函数进行操作。
详情拜会/e/admin/ecmseditor/editorfun.php。

然后就可以返复书息了。

标签:

相关文章