2011-08-20 76 views
2

之前,我有一個網站,允許用戶上傳視頻文件,但我想限制文件大小爲2MB,這是上傳文件後非常簡單,但沒有任何人知道,如果我能前檢查文件大小上傳它,所以我不會不必要地重載服務器?檢查文件大小上傳

我可能會尋找一個JavaScript/AJAX的解決方案,但我沒有就如何實現這一線索。

任何幫助將是非常歡迎的。多謝你們!

UPDATE:

我需要檢查文件大小上客戶端而不是服務器端,這可能嗎?

回答

3

您可以在JavaScript中使用HTML5閱讀file reader本地文件:
http://www.html5rocks.com/en/tutorials/file/dndfiles/

function handleFileSelect(evt) { 
    var files = evt.target.files; // FileList object 

    // files is a FileList of File objects. List some properties. 
    var output = []; 
    for (var i = 0, f; f = files[i]; i++) { 
    console.log(f.size);  /*<--Here is your size of the file! :D*/ 
    } 
} 

document.getElementById('files').addEventListener('change', handleFileSelect, false); 
+1

尊敬的德里克,謝謝你這麼多的解決方案,似乎很有趣,我會保持它以備將來使用,但你知道如何在HTML4實現這一目標? –

+1

@Tuga,我不認爲這是可能的HTML4。你必須在服務器上這樣做。 –

+0

謝謝,我將繼續在html4中尋找解決方案。 –

-2

如果您使用PHP,你可以設置PHP選項 - 'upload_max_filesize的'。見http://www.php.net/manual/en/ini.core.php#ini.upload-max-filesize可能會有所幫助。

+2

謝謝您的回答,但我需要在上傳之前「**檢查文件大小,所以我不超載服務器不必要**」,基本上,我需要檢查的**客戶端文件大小**和** **不**上的服務器端**。 –