标签:
文件用表单提交后,自动发送到服务器上,形成一个临时文件,需要移到指定的存储位置,临时文件的地址存放在$_FILES全局数组中,这个全局数组还保存着临时名称,大小等信息
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 ‘失败‘; } ?>
标签:
原文地址:http://www.cnblogs.com/lzzhuany/p/4780614.html