สคริปอัปโหลดไฟล์ PHP อัปโหลดได้หลายไฟล์ บทความนี้แนะนำการเขียนสคริปอัปโหลดไฟล์ ด้วยภาษา PHP โดยสคริปนี้รองรับการเลือกไฟล์ และอัปโหลดได้หลายไฟล์พร้อมกัน พร้อมแสดงผลลัพธ์ออกสู่หน้าจอ สามารถเขียนโปรแกรมได้ดังนี้
ตัวอย่าง สคริปอัปโหลดไฟล์ PHP อัปโหลดได้หลายไฟล์
<h4>สคริปอัปโหลดไฟล์ PHP</h4>
<form action="<?=$_SERVER['PHP_SELF'];?>" method="POST" enctype="multipart/form-data">
กรุณาเลือกไฟล์ <input type="file" name="f[]" multiple><br/>
<input type="submit" value="อัปโหลดไฟล์">
</form>
<?php
isset( $_FILES['f']['tmp_name'] ) ? $f_tmp_name = $_FILES['f']['tmp_name'] : $f_tmp_name = "";
isset( $_FILES['f']['name'] ) ? $f_name = $_FILES['f']['name'] : $f_name = "";
$counter = 1;
if( !empty( $f_tmp_name ) && !empty( $f_name ) ) {
for( $i=0; $i<count( $f_tmp_name ); $i++ ) {
if( move_uploaded_file( $f_tmp_name[$i], $f_name[$i] ) ) {
echo "{$counter}. ไฟล์ ".$f_name[$i]." อัปโหลดสำเร็จ<br/>";
$counter++;
}
}
}
?>
ผลลัพธ์
1. ไฟล์ demo.png อัปโหลดสำเร็จ
2. ไฟล์ example.png อัปโหลดสำเร็จ
3. ไฟล์ text.txt อัปโหลดสำเร็จ
4. ไฟล์ sample.pdf อัปโหลดสำเร็จ
สคริปอัปโหลดไฟล์ PHP สคริปนี้รองรับการอัปโหลดไฟล์ ได้หลายไฟล์พร้อมกันจากการกำหนดตัวแปร f[] เป็น array และใช้ attribute multiple และในส่วนของฝั่ง PHP ใช้คำสั่ง for วนลูปไฟล์ทั้งหมดที่ผู้ใช้งานเลือก พร้อมกับอัปโหลดไฟล์ขึ้น Server ด้วยคำสั่ง move_uploaded_file พร้อมแสดงข้อความสถานะการอัปโหลดไฟล์ บนหน้าเว็บไซต์