การอัพโหลดไฟล์ ไปยัง server ด้วย php upload file
สิ่งที่ต้องดู อย่างแรกคือ- server ที่เราใช้ อยู่ อนุญาติ ให้ อัพโหลดไฟล์ได้หรือเปล่า
phpinfo();
หาข้อความ file_uploads ถ้า On อยู่ก็okครับ Server เปิดให้เรา upload ไฟล์ได้
ต่อ ไป ดู ต่อว่า จะ upload ได้ขนาด สูงสุดเท่าไร
หาข้อความ upload_max_filesize **M คือ ขนาดไฟล์ ที่เราสามารถ upload ได้
function ที่ใช้ในการ Upload file
ทั้ง 2 function นี้ใช้ ในการ อัพโหลดไฟล์ ขึ้น server ได้เหมือน กัน
การให้ function ทั้ง 2 อันนี้คือ เรา ต้องไป ก๊อบปี้ ไฟล์ จาก tmp ของ server มาไว้ ใน foder ของเรา ตาต้องการ ดัง นั้น parameter ของทั้ง 2 function นี้ คือ
bool copy ( string source, string dest ) copy ไฟล์ ไปยังตำแหน่งที่ต้องการ จะคือ ค่าจริง ถ้า ทำสำเร็จ
bool move_uploaded_file ( string filename, string destination ) copy ไฟล์ ไปยังตำแหน่งที่ต้องการ โดย จะเช็ค ว่า ไฟล์ ที่ต้องการ copy นั้นเป็นไฟล์ที่ อัพโหลด ด้วย HTTP POST ขึ้นมาหรือไม่
ถ้าเราเลือกใช้ function copy ให้ ได้ ไฟล์ ที่ เรา upload จริงๆ ต้อง ทำดังนี้
if (is_uploaded_file($_FILES['userfile']['tmp_name'])) {
copy($_FILES['userfile']['tmp_name'], "/place/to/put/uploaded/file");
}
ถ้า ใช้ move_upload_file() ก็
move_uploaded_file($_FILES['userfile']['tmp_name'], "/place/to/put/uploaded/file");
คงจะเห็นความแตกต่าง และเลือกใช้ ให้เหมาะ สมนะครับ
พูดคุยกันได้ที่บอร์ด