希望能在同一個form表單內,有多個上傳按鈕。
網路查一查,只知道<input type="file">
的name要取名不一樣。
實作後,只有第一個按鈕可以成功上傳,第二個按鈕以後的就無法上傳。
還請大師們給個方向,感激不盡......^___^
html
<form action="uploadFile.php" method="POST" enctype="multipart/formdata" name="form1" id="myForm">
<input type="file" name="myFile_1" multiple id="myFile" class="btn btn-info" /></input><br />
<input type="file" name="myFile_2" multiple id="myFile" class="btn btn-info" /></input><br />
<input type="file" name="myFile_3" multiple id="myFile" class="btn btn-info" /></input><br />
</form>
javascript
$(document).ready(function(){
$("#myFile").on("change", function(){
var input = $(this);
var inputLength = input[0].files.length; //No of files selected
var file;
var formData = new FormData();
for (var i = 0; i < inputLength; i++) {
file = input[0].files[i];
formData.append( 'myFile[]', file);
}
//send POST request to upload.php
$.ajax({
url: "uploadFile.php",
type: "POST",
data: formData,
processData: false,
contentType: false,
beforeSend: function(){
$(".loading").show();
}
}).done(function( data ) {
$(".loading").hide();
$("#resultArea").append(data);
input.val('');
});
});
});
uploadFile.php
<?php
foreach ($_FILES["myFile"]["error"] as $key => $error) {
if($error == 0){
$name = $_FILES["myFile"]["name"][$key];
$uploadPath = "uploads/" . $name;
if(move_uploaded_file( $_FILES["myFile"]["tmp_name"][$key], $uploadPath)){
echo "<a href='".$uploadPath."' target='_BLANK'>".$name."</a><br>";
}
}
}
?>
請記得不要用到同名id。id名只能唯一性。
如果使用同名id就會發生你這樣只有一個會有作用的情況。
感謝
我把html改成
<form action="uploadFile.php" method="POST" enctype="multipart/formdata" name="form1" id="myForm">
<input type="file" name="myFile" multiple id="myFile_1" class="btn btn-info" /></input><br />
<input type="file" name="myFile" multiple id="myFile_2" class="btn btn-info" /></input><br />
<input type="file" name="myFile" multiple id="myFile_3" class="btn btn-info" /></input><br />
</form>
變成都不能上傳了,不知道還有哪裡有問題?
你是來學習的還是學生來要答案的?
你該不會只有改了id名就想要直接用?
你程式也要跟著id名改啊?
不需要人家一步一步來告訴你該怎麼做吧?
抱歉......
因為是新手,還在學習階段,所以不太懂
也謝謝您,我知道怎麼改了^___^
id是唯一值~~~~
感謝
我把html改成
<form action="uploadFile.php" method="POST" enctype="multipart/formdata" name="form1" id="myForm">
<input type="file" name="myFile" multiple id="myFile_1" class="btn btn-info" /></input><br />
<input type="file" name="myFile" multiple id="myFile_2" class="btn btn-info" /></input><br />
<input type="file" name="myFile" multiple id="myFile_3" class="btn btn-info" /></input><br />
</form>
變成都不能上傳了,不知道還有哪裡有問題?
謝謝大家,我知道怎麼改了^___^