Devdit
 

PHP เช็คขนาดไฟล์ก่อนอัปโหลด ด้วย jQuery

2.6K

สอนเขียน PHP เช็คขนาดไฟล์ก่อนอัปโหลด ด้วย jQuery บทความนี้สอนการใช้ jQuery Framework สำหรับเช็คขนาดไฟล์เมื่อผู้ใช้งานเลือกไฟล์ กรณีถ้าขนาดไฟล์ใหญ่เกินกว่าที่ระบบรองรับให้แสดงข้อความแจ้งเตือน พร้อมปิดการใช้งานของปุ่ม submit ของฟอร์ม สามารถเขียนโปรแกรมได้ดังนี้

 

ตัวอย่าง PHP เช็คขนาดไฟล์ก่อนอัปโหลด ด้วย jQuery

<form>
    <input type="file" id="file" />
    <input type="submit" id="submit" value="ตกลง">
</form>
<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
<script>
    $('#file').bind('change', function() {
        const maxSize = 1000000; //byte
        const mb = maxSize/maxSize;
        let size = this.files[0].size;
        if( size > maxSize ) {
            alert("ระบบไม่รองรับไฟล์ภาพขนาดใหญ่เกินกว่า "+mb+" mb");
            $("#submit").prop( "disabled", true );
        } else {
            $("#submit").prop( "disabled", false );
        }
    });    
</script>

คำอธิบาย

PHP เช็คขนาดไฟล์ก่อนอัปโหลด แนะนำให้ใช้ jQuery Framework จากตัวอย่างมีรายละเอียดดังนี้

1. สร้างฟอร์ม พร้อมกับ input file id = file และปุ่ม submit id = submit

2. เมื่อผู้ใช้งานเลือกไฟล์ โปรแกรมจะเข้าไปทำงานในฟังก์ชัน $('#file').bind('change')

3. กำหนดตัวแปร maxSize = 1000000 มีหน่วยเป็น byte = 1mb กรณีต้องการให้รองรับไฟล์ใหญ่กว่า 1mb ให้เปลี่ยนตัวเลขตรงนี้

4. ใช้คำสั่ง this.files[0].size เพื่อดึงขนาดของรูปภาพออกมา เก็บไว้ที่ตัวแปร size

5. ใช้คำสั่ง if เปรียบเทียบหาก size > maxSize ให้แจ้งข้อความด้วย alert และปิดการใช้งานปุ่ม submit ด้วย prop disabled = true

แก้ไข 2 ปีที่แล้ว
ชอบ
ลิ้งก์
แชร์
Devdit มีช่อง YouTube แล้ว
เราสร้างวิดีโอเกี่ยวกับเทคโนโลยี ทำตามง่ายๆ