商城笔记10——如何进行文件上传
php文件上传的过程:
1.提交后,文件自动发到服务器上,形成一个临时文件
2.在服务器上,只需要把临时文件移到自己想要的位置就可以完成上传操作
疑问:临时文件在哪呢?文件的其他信息如文件名,文件大小,等又在哪儿呢?
答:PHP形成文件后,还会形成一个$$_FILES超级全局数组,数组里保存着文件的临时地址,临时名称,大小等信息,所以想上传文件,得先读$_FILES
表单代码如下:01.html
<body>
<p><h2>文件上传表单</h2>
</p>
<p>
</p>
<form action = "01.php" method ="post" enctype='multipart/form-data'>
用户名:<input type ="text" name= 'username' value="张三"/><br />
头像:<input type = "file" name = "pic" value="" /> <br />
<input type = "submit"value="提交" />
</form>
</body>
上传文件时,“enctype=’multipart/form-data’”这句话很重要,表单里要有才可以。
method =”post” :设置为post发送,在另一个页面才能接受到。
接收代码:01.php
print_r($_FILES);
if(move_uploaded_file($_FILES['pic']['tmp_name'],'./file/' . $_FILES['pic']['name'])){
echo '成功';
}else{
echo '失败';
}
上面的只是比较简单也比较理想的上传图片的方式,在商城实战中,要考虑到方方面面。
- 接收文件数据
- 获取文件数据后,判断文件是否符合上传文件的大小,格式等标准
- 不符合标准发出报错信息
- 生成新的文件名,要判断大小写
- 生成新的目录来放上传的文件
- 将上传的文件的临时文件转移到生成的文件夹里面