客户端浏览器上传文件,是通过html中的表单file控件来实现的,如果将input框的type设置为file,被点击时会弹出窗口选择本地的文件进行上传.
这里需要注意,如果表单中出现文件上传,则应该将表单发送是否编码设置为不编码 enctype="multipart/form-data".
当用户点击表单提交时,文件会发送到接收的服务器端脚本,如php. 在php中 可使用$_FILES这个预定义变量来接收发送的文件.
其中收到的信息如下:
$_FILES[‘myfile‘][‘name‘] 是指被上传文件的名称
$_FILES[‘myfile‘][‘type‘] 是指被上传文件的类型
$_FILES[‘myfile‘][‘size‘] 是指被上传文件的大小,单位为字节(B)
$_FILES[‘myfile‘][‘tmp_name‘] 是指被上传文件存在服务器中的临时副本文件名称,文件被移 动到指定目录后临文件将被自动消毁。
$_FILES[‘myfile‘]["error"] 是指由文件上传中有可能出现的错误的状态码,关于各状态含义 在后面说明。
error状态码:
0: 没有错误发生,文件上传成功。
1: 上传的文件超过了 php.ini 中 upload_max_filesize选项限制的值
2: 上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值
3: 文件只有部分被上传。
4: 没有文件被上传
6: 找不到临时文件夹。PHP 4.3.10 和 PHP 5.0.3 引进。
7: 文件写入失败。PHP 5.1.0 引进。
当$_FILES[‘myfile‘]["error"]返回为0时表示文件已经上传成功,这时候我们需要使用php的move_uploaded_file() 函数将上传的临时文件移动到新的位置,这样文件就被保存到服务器了。
本文出自 “成长从博客开始” 博客,请务必保留此出处http://lxqybyq.blog.51cto.com/7868338/1839469
原文地址:http://lxqybyq.blog.51cto.com/7868338/1839469