首頁 >後端開發 >php教程 >如何在上傳前驗證檔案大小:客戶端與伺服器端?

如何在上傳前驗證檔案大小:客戶端與伺服器端?

Linda Hamilton
Linda Hamilton原創
2024-10-29 00:28:301076瀏覽

How to Validate File Size Before Upload: Client-Side vs. Server-Side?

上傳前檢查檔案大小

給定的腳本有效地驗證檔案類型合規性。若要額外驗證檔案大小並防止上傳超過500kB,請考慮以下解決方案:

用戶端取消

在使用者選擇檔案時利用HTML5 檔案API 決定檔案大小:

<code class="javascript">document.forms[0].addEventListener('submit', function( evt ) {
    var file = document.getElementById('file').files[0];

    if(file &amp;&amp; file.size < 10485760) { // 10 MB (this size is in bytes)
        //Submit form        
    } else {
        //Prevent default and display error
        evt.preventDefault();
    }
}, false);

伺服器端取消

利用$_FILES 陣列檢索伺服器上的檔案大小:

<code class="php">if(isset($_FILES['file'])) {
    if($_FILES['file']['size'] > 10485760) { //10 MB (size is also in bytes)
        // File too big
    } else {
        // File within size restrictions
    }
}</code>

PHP ini 設定

如果必要時,請使用upload_max_filesize 設定將上傳限制為適合所有場景的值。請注意,這是一個全域設定。

客戶端驗證的重要性

客戶端驗證透過防止不必要的上傳並提醒使用者檔案問題來提供使用者友善的體驗。伺服器端驗證對於確保安全性仍然至關重要,因為客戶端檢查可能會受到損害。

以上是如何在上傳前驗證檔案大小:客戶端與伺服器端?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn