หัวข้อ: enctype="multipart/form-data คืออะไรค่ะ เริ่มหัวข้อโดย: hacker ที่ 03 กรกฎาคม 2009, 17:08:34 enctype="multipart/form-data
รูปแบบเต็ม <form method="post" enctype="multipart/form-data"> <input name="op" type="hidden" value="AddProperty" /> หัวข้อ: Re: enctype="multipart/form-data คืออะไรค่ะ เริ่มหัวข้อโดย: mr.sit ที่ 03 กรกฎาคม 2009, 17:35:18 ปกติฟอร์มส่งข้อมูล จะส่งข้อมูลประเภท text ได้อย่างเดียว
การระบุ enctype="multipart/form-data" เป็นการอนุญาตให้ฟอร์มส่งข้อมูลได้หลายประเภทพร้อมกัน เช่น ข้อความและรูปภาพ (อัพโหลดรูป) ชื่อก็บอกอยู่แล้วว่า multi :) หัวข้อ: Re: enctype="multipart/form-data คืออะไรค่ะ เริ่มหัวข้อโดย: hacker ที่ 03 กรกฎาคม 2009, 18:56:59 แล้วมันจะส่งค่าไปเก็บไว้ในฐานข้อมูลเลยหรือเปล่าค่ะถ้าไม่ แล้วไฟล์ที่ รับของ enctype="multipart/form-data เขียนในรูปแบบใดค่ะ
หัวข้อ: Re: enctype="multipart/form-data คืออะไรค่ะ เริ่มหัวข้อโดย: สเร็น ที่ 03 กรกฎาคม 2009, 20:09:41 การอัพโหลดไฟล์ ไปยัง server ด้วย php
สิ่งที่ต้องดู อย่าง แรก คือ ดู ว่า server ที่เราใช้ อยู่ อนุญาติ ให้ อัพโหลดไฟล์ได้หรอืเปล่า ด้วย phpinfo() ; หาข้อความ On อยู่ ก็ ok ครับ upload ได้ ต่อ ไป ดู ต่อว่า จะ upload ได้ขนาด สูงสุดเท่าไร หาข้อความ upload_max_filesize **M คือ ขนาดไฟล์ ที่เราสามารถ upload ได้ function ที่ใช้ในการ Upload file 1.copy() 2.move_uploaded_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"); คงจะเห็นความแตกต่าง และเลือกใช้ ให้เหมาะ สมนะครับ เครดิต mindphp.com หัวข้อ: Re: enctype="multipart/form-data คืออะไรค่ะ เริ่มหัวข้อโดย: thenetxx ที่ 08 กรกฎาคม 2009, 16:37:07 ^__^ เข้ามาดู hacker งงเรื่อง encryption :'(
หัวข้อ: Re: enctype="multipart/form-data คืออะไรค่ะ เริ่มหัวข้อโดย: moonoi ที่ 08 กรกฎาคม 2009, 16:45:19 urlencoded ลองนึกถึง GET Method ครับ
จะส่งข้อมูลแบบนั้นเลยครับ แค่อยู่ในรูปแบบ POST Method เช่น a=1&b=1&..... จึงไม่รองรับการส่งไฟล์ผ่านรูปแบบนี้ครับ (นึกถึงเนื้อหาในไฟล์ที่จะส่ง) multipart จะเป็นการแบ่งข้อมูลเป็นส่วนๆครับ เช่น ---------------------------------------- name=a 1 ---------------------------------------- name=myfile.txt size=514 CONTENT HERE ---------------------------------------- ลืมไปหมด อาจจะผิดพลาดบ้างนะครับ หัวข้อ: Re: enctype="multipart/form-data คืออะไรค่ะ เริ่มหัวข้อโดย: ttong ที่ 09 กรกฎาคม 2009, 18:25:53 แล้วมันจะส่งค่าไปเก็บไว้ในฐานข้อมูลเลยหรือเปล่าค่ะถ้าไม่ แล้วไฟล์ที่ รับของ enctype="multipart/form-data เขียนในรูปแบบใดค่ะ มันจะไม่เก็บลงในฐานข้อมูลเลยครับ แต่มันจะเก็บใน temp ชั่วคราวก่อน แล้วเราก็ใช้ $_FILE รับค่าต่างๆ มา เพื่อนำมาบันทึกลงใน folder หรือ database อีกที $attach=$_FILES['image']['tmp_name']; // ที่ที่รูปถูกเก็บไว้ $attach_name=$_FILES['image']['name']; // ชื่อของรูปที่รับมา $attach_size=$_FILES['image']['size']; // ขนาดของรูปที่รับมา $attach_type=$_FILES['image']['type']; // ประเภทของรูปที่รับมา ผิดพลาดขออภัย หัวข้อ: Re: enctype="multipart/form-data คืออะไรค่ะ เริ่มหัวข้อโดย: Taew2011 ที่ 17 มิถุนายน 2012, 01:05:43 :wanwan003:
|