文件上传
时间:2019-09-25
本文章向大家介绍文件上传,主要包括文件上传使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
type属性为 file 的 input 元素可以通过表单提交文件(上传文件),服务端PHP可以通过$_FILES获取上传的文件信息
<?php if ($_SERVER['REQUEST_METHOD'] === 'POST') { var_dump($_FILES); //接收文件,使用一个 叫做 $_FILES 超全局成员 } ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" enctype="multipart/form-data"> <input type="text" name="bar"> --> <input type="file" name="img"> <button>提交</button> </form> </body> </html>
①如果一个表单中有文件域(文件上传),必须将表单的 method 设置为 post , enctype 设置为 multipart / form-data
②接收文件,使用一个叫做 $_FILES 超全局成员
文件上传案例
<?php if($_SERVER['REQUEST_METHOD']==='POST') { postback(); } function postback(){ if(!isset($_FILES['fileUpload'])){ $GLOBALS['message'] ="客户端提交的表单内容中根本没有文件域"; return; } $fileUpload=$_FILES['fileUpload']; echo $fileUpload['error']; if($fileUpload['error'] !== UPLOAD_ERR_OK){ $GLOBALS['message']="上传失败"; //服务端没有接收到上传的文件 return; } $sourceDir = $fileUpload['tmp_name']; //源文件在哪 $targetDir = './targetDir/' . $fileUpload['name']; //目标放在哪 $moved=move_uploaded_file($sourceDir,$targetDir); if(!$moved){ $GLOBALS['message']="上传失败"; return; } } ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>文件上传</title> </head> <body> <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" enctype="multipart/form-data"> <input type="file" name="fileUpload"> <button>上传</button> <?php if(isset($message)): ?> <?php echo $message;?> <?php endif ?> </form> </body> </html>
①$filesUpload => arrar(5) {
["name"] => string
}
原文地址:https://www.cnblogs.com/shanlu0000/p/11587466.html
- 一个MySQL死锁问题的复现
- Spring Boot 2.0 新特性(一):配置绑定 2.0 全解析
- MySQL断电恢复的一点简单分析
- Spring Boot 2.0 新特性(二):新增事件ApplicationStartedEvent
- 奇怪的go语言iota
- Golang web服务器处理前端HTTP请求跨域的方法
- MySQL死锁的两个小案例
- Go 的浏览器集成测试
- 关于数据库Prepare返回指针的的问题
- 怎么设置 http 请求 并发 连接数 限制
- MySQL 5.7中锁的一个通用问题
- golang 中sync.WaitGroup以及select简单实用
- Mycat分库分表的简单实践
- Go语言数组
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 排序算法之快速排序
- 干货 | Oracle数据库操作命令大全,满满的案例供你理解,收藏!
- 【2万字长文】深入浅出主流的几款小程序跨端框架原理
- 关于动态规划的练习题
- Linux笔记
- 使用OpenCV和Python计算视频中的总帧数
- HDOJ 1087 (JAVA实现 最大上升子序列和dp)
- JavaSE笔记
- [译]Gas 优化 - 如何优化存储
- Codeforces Round #613 (Div. 2) C. Fadi and LCM
- N皇后问题(DFS)
- [译]区块链民主 - 如何开发通过投票运行的合约
- java安全编码指南之:异常处理
- java安全编码指南之:死锁dead lock
- java安全编码指南之:方法编写指南