您的位置:首页 > 编程语言 > PHP开发

php文件上传

2015-12-04 18:23 531 查看
在服务器上判断:

1)接收数据post 2)[b]enctype="multipart/form-data"属性[/b]

3)move_uploaded_file :移动文件到指定位置

php.ini临时文件的配置 file_uploads = On upload_tmp_dir = "

临时文件的消失时间:临时文件在接受的.php文件结束后,就立即消失了

要是没有.php文件没有结束,则可以观察到临时文件的内容;

在客户端判断上传文件大小:js是不允许操作本地文件的

Ajax 无法实现在客户端判断上传文件的大小

1.php文件上传的过程:

做一个文件上传的表单:

<form action="up.php"method="post">
用户名:<input type="text" name="username"/><br/>
头像:<input type="file" name="pic"/><br/>
<input type="submit" value="提交"/>
</form>


1)提交后,文件自动发到服务器上,形成一个临时文件,

2)在服务器上,只需要把临时文件移动到自己想要的位置,就可以完成上传文件

php形成临时文件后,还会形成一个$_FILES超级全局数组

数组里面保存着文件的临时地址,临时名称,大小,等信息

注意:文件上传必须用post提交

在up.php中:

<?php
print_r($_FILES);
?>


此时打印在浏览器上的为空数组

解决方法:声明enctype选项

即:在form中声明:enctype="multipart/form-data"属性

通知对方服务器,发的是包含文件的二进制信息表单数据

则会出现:

{

name:上传文件名

type:文件类型

tem_name:临时文件名

error:错误代码

size:文件大小 以字节来表示 ;

}

3)如何移动上传的临时文件

用move_uploaded_file()函数<?php


print_r($_FILES);

if(move_uploaded_file($_FILES['pic']['tmp_name'],'./file/'.$_FILES['pic']['name'])){
echo "success";
}else{
echo "fail";


}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: