我在互聯網上關注瞭如何使用HTML5,Javascript和PHP創建上傳表單。當我嘗試上傳時,我上傳小文件很好,但是如果我輸入更大的文件,它會給我一個錯誤。我想我的第一個錯誤是因爲IIS沒有被配置爲上傳大文件,所以我解決了這個問題,從那時起,每當我嘗試從PHP獲取文件時,我都沒有收到任何東西。我得到空的參數。下面是我的一些代碼片段:上傳文件大小問題(HTML5,Javascript,PHP)
HTML:
<form id="upload_form" enctype="multipart/form-data" method="post">
<input type="file" name="file1" id="file1"><br>
<input type="button" value="Upload File" onclick="uploadFile()">
<progress id="progressBar" value="0" max="100" style="width:300px;"></progress>
<h3 id="status"></h3>
<p id="loaded_n_total"></p>
</form>
的JavaScript:
function uploadFile(){
var file = _("file1").files[0];
var formdata = new FormData();
formdata.append("file1", file);
var ajax = new XMLHttpRequest();
ajax.upload.addEventListener("progress", progressHandler, false);
ajax.addEventListener("load", completeHandler, false);
ajax.addEventListener("error", errorHandler, false);
ajax.addEventListener("abort", abortHandler, false);
ajax.open("POST", "file_upload_parser.php");
ajax.send(formdata);
}
PHP:
<?php
$fileName = $_FILES["file1"]["name"];
$fileTmpLoc = $_FILES["file1"]["tmp_name"];
$fileType = $_FILES["file1"]["type"];
$fileSize = $_FILES["file1"]["size"];
$fileErrorMsg = $_FILES["file1"]["error"];
if (!$fileTmpLoc) {
echo "ERROR: Please browse for a file before clicking the upload button.";
exit();
}
if(move_uploaded_file($fileTmpLoc, "savefiles/$fileName")){
echo "$fileName upload is complete";
} else {
echo "move_uploaded_file function failed";
}
?>
什麼是處理大上載的最好方式文件?我正在尋找一種方式來上傳2GB左右的文件。
只是讓你知道這不是我投票的答案。我從來沒有說過我的回答是最好的,但如果這只是OP的一個簡單的家庭項目,而不是使用plupload進行額外的工作,那麼OP可能不會做什麼,只要他/她將會使用它而不是簡單地更改上傳大小限制是沒有問題的。你的方式可能是正確的方式,但現在OP有幾個選項,並可以爲給定的情況選擇最好的一個。 – elitechief21