php知识点之php文件上传
php知识点之php文件上传
1. 文件上传时需要的注意事项:
- HTNL表单部分:- 上传文件时,传输方式必须是post方式- 需要指定表单传输编码格式:enctype="multipart/form-data";
- PHP部分需要注意:1. 如果有文件上传,那么上传的文件在PHP脚本中不能用$_POST来接收,必须用$_FILES来接收,其它内容依然用$_POST2. php.ini配置文件中:upload_max_filesize = 2M 允许上传文件大小的最大值3. upload_tmp_dir = "c:/wamp64/tmp" 文件上传的临时目录(也叫作垃圾目录,文件上传都会到这个文件夹这是防止有人恶意上传病毒文件,上传到临时文件后如果没有用PHP脚本将这个文件移动走,这个文件会被从临时文件删除,并且速度很快,可以用sleep()函数观察)4. file_uploads = On 允许文件上传5. max_file_uploads = 20 表示允许最大上传文件个数为20个6. post_max_size = 8M 表示POST最大传输内容为8m注意:upload_max_filesize 设置的值最大不能超过 post_max_size设置的值,因为upload_max_filesize是被包含在post_max_size里面的
2. 表单传输账号密码
web上传文件通常为表单传输,普通的表单通过post和get进行传输,类似这样
<form action="file.php" method="post" enctype="multipart/form-data>用户名:<input type="text" name="user">密码:<input type="password" name="pwd">上传文件:<input type="file" name="pic"><input type="submit" value="登录">
</form>
使用以上表单的方式就能实现用post传输账号密码和上传的文件,在file.php文件里
var_dump($_POST['user']);//打印传输的账号var_dump($POST['pwd']);//打印传输的密码var_dump($_FILES);//打印上传文件的信息
值得注意的是接收文件的变量是$_FILES,而不是$_POST,$_POST是接收不到文件上传的信息的
//打印$_FILES的结果就是下面这些,包含四个参数
//分别是 文件名,文件类型,文件路径,文件的错误码,文件大小
array (size=1)'pic' => array (size=5)'name' => string 'peng.jpg' (length=8)'type' => string 'image/jpeg' (length=10)'tmp_name' => string 'C:\wamp64\tmp\php56C1.tmp' (length=25)'error' => int 0'size' => int 61204
3.关于错误码
不同的情况会返回不同的错误码
//我们打印错误码
var_dump($_FILES['pic']['error']);
//结果为0,上传文件大小超过了php.ini中upload_max_filesize的值
//结果为1,上传文件超过了html表单中设置的MAX_FILE_SIZE设置的值
//结果为2,只有部分文件被上传
//结果为4,没有文件上传
//结果为6,没有临时文件目录
//结果为7,写入失败
php知识点之php文件上传相关推荐
- springboot文件上传下载实战 ——文件上传、下载、在线打开、删除
springboot文件上传下载实战 文件上传 文件上传核心 UserFileController 文件上传测试 文件下载与在线打开 文件下载.在线打开核心 UserFileController 文件 ...
- WEB攻防-通用漏洞文件上传二次渲染.htaccess变异免杀
目录 知识点 详细点 文件二次渲染 php删除规则 例题 CTF-Web入门-162 CTF-Web入门-163 CTF-Web入门-164 CTF-Web入门-165 CTF-Web入门-166 C ...
- 河南省网络安全高校战队联盟CTF训练营-web文件上传第一期
文件上传 个人介绍 姓名:飞羽 CTF菜菜一枚 例题来源 ctfhub:https://www.ctfhub.com pwnthebox:https://insider.pwnthebox.com c ...
- day34 文件上传黑白盒审计逻辑中间件外部引用
前言 #知识点: 1.白盒审计三要素 2.黑盒审计四要素 3.白黑测试流程思路 #详细点: 1.检测层面:前端,后端等 2.检测内容:文件头,完整性,二次渲染等 3.检测后缀:黑名单,白名单,MIME ...
- 2020小迪培训(第20天WEB 漏洞-文件上传之基础及过滤方式)
WEB 漏洞-文件上传之基础及过滤方式 前言 知识点 什么是文件上传漏洞? 有文件上传不一定存在漏洞 凡是存在文件上传的地方/功能的地方都可以进行文件上传漏洞测试 上传文件操作的代码的完整性.安全性, ...
- Spring Boot文件上传及回显(单/多文件)
一.单文件上传 1.前端页面 <!DOCTYPE html> <html lang="en"> <head><meta charset=& ...
- 全网最详细的渗透测试靶机实操步骤——vulnhub靶机实战(七)IMF【包含了sql注入,文件上传,gif图片木马制作,缓冲区溢出漏洞sploit等诸多知识点的靶机,超多干货】
靶机地址:https://www.vulnhub.com/entry/imf-1,162/ 靶机难度:中级(CTF) 靶机发布日期:2016年10月30日 靶机描述:欢迎使用" IMF&qu ...
- 文件上传漏洞 (上传知识点、题型总结大全-upload靶场全解)
文件上传漏洞 什么是文件上传漏洞 什么是webshell 一句话木马大全 产生文件上传漏洞的原因 文件上传漏洞的攻击与防御方式 1.前端限制 2.检查扩展名 1.黑名单策略, 2.白名单策略 3.检查 ...
- 00截断上传绕过_【文件上传与解析】文件上传与解析漏洞总结v1.0
点击上方"公众号" 可以订阅哦! Hello,各位小伙伴晚上好~ 这里是依旧勤劳写公众号的小编~ 今天本公众号将推出一个新的模块,那就是漏洞知识点总结模块!!!(此处应有掌声~) ...
最新文章
- c#强制执行内存回收
- 软件工程之四则运算开发感悟与收获
- Linux中read接收用户输入
- (dfs)迷宫最小步数
- Redis - 数据持久化
- Asp.net MVP模式介绍
- 注册表修改系统显示时间
- 《程序员修炼之道》第2版
- reviewboard mysql_ReviewBoard 的安装和使用
- 苹果怎么用计算机,苹果笔记本怎么用(苹果电脑Mac 系统基本操作介绍)
- 医院PACS系统源码 PACS信息系统源码
- Imagenet数据集1000类别中英文
- 神舟战神Z8-CA5NP,RTX3060怎么样?测评值得买吗?详细性能点评
- Vue.js :使用LODOP打印表格文件
- Centos破解密码
- Android MediaPlayer中的RTSP(一):RTSP简介
- 43款设计师必备英文设计字体-书法字体
- java实践11之网络IO BIO和NIO(上)
- 伊玛尔Emaar集团12个关系网曝光!个个大有来头!
- 字符串的最大递增子串