多个文件上传
25 September 2013
html代码如下,有两点需要注意的:一是设置form的enctype属性,二是使用post方法
1
2
3
4
5
6
7
8
9
10
11
12
13
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<form action="test.php" method="post" enctype="multipart/form-data">
<input type="file" name="userfile1">
<input type="file" name="userfile2">
<input type="file" name="userfile3">
<input type="submit">
</form>
</body>
</html>
php代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<?php
/**
* 错误代码:
*
* UPLOAD_ERR_OK
*
* 其值为 0,没有错误发生,文件上传成功。
* UPLOAD_ERR_INI_SIZE
*
* 其值为 1,上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值。
* UPLOAD_ERR_FORM_SIZE
*
* 其值为 2,上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。
* UPLOAD_ERR_PARTIAL
*
* 其值为 3,文件只有部分被上传。
* UPLOAD_ERR_NO_FILE
*
* 其值为 4,没有文件被上传。
* UPLOAD_ERR_NO_TMP_DIR
*
* 其值为 6,找不到临时文件夹。PHP 4.3.10 和 PHP 5.0.3 引进。
* UPLOAD_ERR_CANT_WRITE
*
* 其值为 7,文件写入失败。PHP 5.1.0 引进。
*
*/
if (!empty($_FILES)) {
foreach ($_FILES as $key => $value) {
if ($value['error'] === 0) {//上传过程中未出错
if (is_uploaded_file($value['tmp_name'])) {
if (move_uploaded_file($value['tmp_name'], /*...目的位置*/)) {
echo 'file '.$value['name'].' has been uploaded.<br />';
} else {
echo 'Cann\'t upload file!Maybe permission deny!';
}
}
}
}
}
?>