博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
php......文件上传
阅读量:5255 次
发布时间:2019-06-14

本文共 999 字,大约阅读时间需要 3 分钟。

有时候我们需要上传文件到服务器,比较常见的就是注册或修改个人信息时需要上传头像。上传文件需要form表单,并且设置属性enctype="multipart/form-data",只有这样文件才能上传。

上传文件页面:

表单中enctype="multipart/form-data"的意思,是设置表单的MIME编码。默认情况,这个编码格式是application/x-www-form-urlencoded,不能用于文件上传;

只有使用了multipart/form-data,才能完整的传递文件数据,进行下面的操作。

根据name属性值接收传过来的文件,但不是用POST方法,而是FILES。

输出一下:var_dump($_FILES["file"]);

array (size=5)  'name' =>  '4.png' (length=5)  //文件名
'type' =>  'image/png' (length=9) //文件类型
'tmp_name' =>  'D:\wamp\tmp\php89A0.tmp' (length=23) //文件临时存储路径,若不保存文件,当页面关闭时会被删除
'error' =>  0  //错误信息,0代表false
'size' =>  4866 //文件字节大小,若想显示kb,可除以

上传处理页面:

注意:

1.先判断上传是否出错,然后限制文件类型和大小,造文件存储路径,判断文件是否重复,最后保存上传文件。

2.造文件存储路径时,一般可以加日期时间,可精确到毫秒,若想再精确,可加流水号,每次上传都会加1,或者随机数也可以,这样上传的文件名会改变;

若不想改文件名,就需要造文件夹的方法,比如$filename = "./img/kaifa/zhangsan/20160523/aa.jpg";

3.php上传文件大小有限制,若文件太大,服务器很快就满了,所以要限制大小

4.网页上不能显示客户端的图片,只能显示服务器端的图片,所以预览图片时,图片一定已经存储在服务器上了

5.用户选择完文件时,就已经上传到服务器上了,但是只是在临时存储路径,点击上传按钮是将路径保存到数据库。

转载于:https://www.cnblogs.com/xinghun/p/5537949.html

你可能感兴趣的文章
TCP为什么需要3次握手与4次挥手(转载)
查看>>
IOC容器
查看>>
Windows 2003全面优化
查看>>
URAL 1002 Phone Numbers(KMP+最短路orDP)
查看>>
web_day4_css_宽度
查看>>
electron入门心得
查看>>
格而知之2:UIView的autoresizingMask属性探究
查看>>
我的Hook学习笔记
查看>>
js中的try/catch
查看>>
寄Android开发Gradle你需要知道的知识
查看>>
简述spring中常有的几种advice?
查看>>
委托又给我惹麻烦了————记委托链的取消注册、获取返回值
查看>>
ps怎么把白色背景变透明
查看>>
字符串转 Boolean 的正确方式
查看>>
给你的网站404页面加上“宝贝寻亲”公益页面
查看>>
整理推荐的CSS属性书写顺序
查看>>
ServerSocket和Socket通信
查看>>
css & input type & search icon
查看>>
jQuery插件开发详细教程
查看>>
ProxySQL Scheduler
查看>>