<form action="mul_upload.php" method="post" enctype="multipart/form-data"> <input type="hidden" name="MAX_FILE_SIZE" value="1000000"> 選擇檔案1:<input type="file" name="myfile[]"><br> 選擇檔案2:<input type="file" name="myfile[]"><br> 選擇檔案3:<input type="file" name="myfile[]"><br> <input type="submit" value="上傳檔案"> </form>
關鍵點:name="myfile[]" 使 $_FILES 變為三維陣列。
Array(
[myfile] => Array(
[name] => Array([0] => Rav.ini, [1] => msgsocm.log, [2] => NOTEPAD.EXE)
[type] => Array([0] => application/octet-stream, ...)
[tmp_name] => Array([0] => C:/WINDOWS/Temp/phpAF.tmp, ...)
[error] => Array([0] => 0, [1] => 0, [2] => 0)
[size] => Array([0] => 64, [1] => 1350, [2] => 66560)
)
)
<?php
for ($i = 0; $i < count($_FILES['myfile']['name']); $i++) {
if ($_FILES['myfile']['error'][$i] !== UPLOAD_ERR_OK) continue;
if ($_FILES['myfile']['size'][$i] == 0) continue;
$name = $_FILES['myfile']['name'][$i];
$tmp = $_FILES['myfile']['tmp_name'][$i];
$dest = "uploads/" . date('YmdHis') . "_" . $name;
if (move_uploaded_file($tmp, $dest)) {
echo "檔案 $name 上傳成功<br>";
} else {
echo "檔案 $name 上傳失敗<br>";
}
}
?>
<script>
function AddRow() {
var row = document.getElementById('tblData').insertRow();
var cell = row.insertCell();
cell.innerHTML = "<input type='file' name='filelist[]' size='50'/>";
}
</script>
<form method="post" action="uploadfile.php" enctype="multipart/form-data">
<table id="tblData">
<tr><td>檔案上傳列表 <input type="button" onclick="AddRow()" value="添加列表"></td></tr>
<tr><td><input type="file" name="filelist[]" size="50" /></td></tr>
</table>
<input type="submit" name="submitfile" value="提交檔案">
</form>
<?php
if (isset($_POST['submitfile'])) {
$path = "./" . date('Ym') . "/";
if (!is_dir($path)) mkdir($path, 0777, true);
for ($i = 0; $i < count($_FILES['filelist']['name']); $i++) {
if ($_FILES['filelist']['size'][$i] == 0) continue;
$file = $path . date('YmdHis') . "_" . $_FILES['filelist']['name'][$i];
if (move_uploaded_file($_FILES['filelist']['tmp_name'][$i], $file)) {
echo "上傳成功: {$_FILES['filelist']['name'][$i]}<br>";
} else {
echo "上傳失敗: {$_FILES['filelist']['name'][$i]}<br>";
}
}
echo '<a href="' . $_POST['postadd'] . '">返回</a>';
}
?>
error 代碼(UPLOAD_ERR_OK = 0)