文件上传
2015-09-03 20:05
316 查看
文件用表单提交后,自动发送到服务器上,形成一个临时文件,需要移到指定的存储位置,临时文件的地址存放在$_FILES全局数组中,这个全局数组还保存着临时名称,大小等信息
1,文件上传必须用post提交数据
2,必须声明enctype选项,写在form标签中,enctype='multipart/form-data';
3,移动临时文件用move_uploaded_file()函数
4,接收页面执行完毕,临时文件消失
提交表单
接收页面
1,文件上传必须用post提交数据
2,必须声明enctype选项,写在form标签中,enctype='multipart/form-data';
3,移动临时文件用move_uploaded_file()函数
4,接收页面执行完毕,临时文件消失
提交表单
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <form action='file.php' method='post' enctype='multipart/form-data'> 用户名:<input type='text' name='name'><br/> 图片:<input type='file' name='pic' ><br/> <input type='submit' value='提交'> </form> </body> </html>
接收页面
<?php print_r($_POST); print_r($_FILES); /* Array ( [pic] => Array ( [name] => 设计图.png [type] => image/png [tmp_name] => D:\wamp\tmp\phpD0F7.tmp [error] => 0 [size] => 18085 ) ) */ function mk_dir(){ $dir=date('md/i',time()); if(is_dir('./'.$dir)){ return $dir; }else{ mkdir('./'.$dir,0777,true); return $dir; } } function getExt($file){ $tmp=explode('.',$file); return end($tmp); } function randName(){ $str='abcdefghijklmnopqrstuvwxyz0123654789'; return substr(str_shuffle($str),0,6); } if($_FILES['pic']['error']!=0){ echo '上传失败'; exit; } $pic=$_FILES['pic']; //拼接文件路径 $path='./'.mk_dir().'/'.randName().'.'.getExt($pic['name']); //移动 if(move_uploaded_file($pic['tmp_name'],$path)){ echo '上传成功'; }else{ echo '失败'; } ?>
相关文章推荐
- 实现抽取java中的注释的代码
- Codeforces 466E LCA+搞
- 数组中的逆序对
- 一切都是对象
- poj 3104 Drying(二分搜索之最大化最小值)
- Codeforces 463 E 乱搞
- Spring Data JPA查询关键字
- mysql创建范围分区表,并创建任务调度按预定频率添加分区
- mysql日志介绍
- NLPIR web项目之Cannot Open Configure file .\Data\Configure.xml
- 十三、MDT 2013 Update 1批量部署-EFI安装WIN 7、WIN 10、Server 2012 R2实战
- 线程同步:互斥量与读写锁的异同与性能分析
- 第四章
- Goods:图书模块按分类查询各层实现
- 断舍离——我太胆小了
- Java的类加载
- 关于Java中的反射的一个简单使用
- 01背包问题分析
- 编写PHP扩展一:PHP与Zend介绍
- opencv轮廓提取与轮廓拟合