ajax ไม่ได้ถูกออกแบบมาสำหรับการ upload file
เราจึงต้องใช้วิธีอื่นเข้ามาช่วย เพื่อให้ดูเหมือนเป็นการทำงานของ ajaxวิธีนั้นก็คือ การใช้ iframe ดังนี้
<html>
<body>
<form action="uploadfile.php"
method="post"
enctype="multipart/form-data"
target="ifrm"
>
<input type="file" name="upload"/><br />
<input type="submit" value="submit"/>
</form>
<iframe name="ifrm" style="display:none">
</iframe>
</body>
</html>
เราให้ไฟล์นั้นถูก upload ผ่าน iframe แทน
ซึ่งในที่นี้ iframe ถูกซ่อนอยู่
user จึงไม่เห็นการเปลี่ยนแปลงหรือการรีเฟรชใดๆเกิดขึ้นบน page นี้
หมายเหตุ : enctype ต้องมีเสมอ หากมีการ upload file เกิดขึ้น
เนื่องจาก เราต้องแปลงไฟล์ให้อยู่ในรูปของ binary file ก่อน จึงจะสามารถส่งไปให้ upload.php ทำการ upload ขึ้นสู่ server ได้
ไม่มีความคิดเห็น:
แสดงความคิดเห็น