记者不但要能够进行文字报道,还要能够上传图片。以下是一个PHP上传程序,这个程序可以在电脑上上传文件,也可以通过华为、iPhone等手机上传图片。
上传感觉很复杂,实际上PHP上传程序很简单,只有两个程序。
1.upload.php
upload.php核心就是一个form提交框,其功能就是实现选取文件,确定文件名。
图6-32 上传程序界面
类型为file的input控件可以实现上传文件的选取,并将选取的文件名传给upload_file.php。
这个文件从上一个链接接收一个id。
目的是了解要为哪一篇文章上传图片。同样,在action中,也把这个id传值给了下一个文件upload_file.php,以便将这个图片的文件名存到相应条目的Image数据项中。
2. upload_file.php
这个上传文件首先要接收由unload.php中form传过来的文件信息和文章的id。(www.xing528.com)
以上这句话是接收文件信息的语句,传过来的是个数组,数组中除包含文件名外,还包含文件类型、临时文件路径和文件名、出错信息、文件字节数。
为了服务器安全,要对上传文件的文件类型、上传的文件大小进行限制,如果不符合你的要求就要停止上传并退出。
以上这个程序限制了文件大小不得超过20M。
通过下面的语句:if(!in_array($file["type"], $uptypes)){}来判断上传的文件类型$file["type"]是否在$uptypes数组中。
如果不在这个数组中,若你想扩充上传类型,可以在数组中增加你所需要的类型。
比如你要允许上传文本文件,可以添加text/plain类型。
上句可以定义上传文件的目标文件夹。上传的过程是文件先上传到一个系统临时文件夹中,然后再移到你定义的这个目标文件夹下。有一点需要注意的是,系统临时文件夹应该有读、写的权限。一般在安装PHP的时候会自动设好这个权限。
下面的几条操作数据库的语句,则将上传图片的文件名用update(修改)的方式,更新到数据库的Image数据项中。在这个数据库中不但存储了上传文件的文件名,而且存储了文件夹名。
在实际工作中,一篇文章有可能有多张图片,本书只是一个教学范例程序,所以数据库中只设计了一个Image数据项,每篇文章只能包含一张图片。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。