ยินดีต้อนรับคุณ, บุคคลทั่วไป กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน

เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น

ThaiSEOBoard.comพัฒนาเว็บไซต์Programmingสร้าง database เก็บไฟล์ ที่ upload ต้องเก็บข้อมูลอะไรบ้างค่ะ
หน้า: [1]   ลงล่าง
พิมพ์
ผู้เขียน หัวข้อ: สร้าง database เก็บไฟล์ ที่ upload ต้องเก็บข้อมูลอะไรบ้างค่ะ  (อ่าน 1407 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
jailaline
Newbie
*

พลังน้ำใจ: 0
ออฟไลน์ ออฟไลน์

กระทู้: 27



ดูรายละเอียด
« เมื่อ: 23 พฤษภาคม 2009, 10:41:09 »

อยากทราบว่า สร้าง db ไว้เก็บข้อมูลไฟล์ที่อัพโหลด ต้องเก็บข้อมูลอะไรบ้างค่ะ
และมีเก็บข้อมูลเป็นชนิดได้ Huh?

รบกวนให้คำแนะนำด้วยค่ะ
บันทึกการเข้า
Kobsoft
Verified Seller
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 255
ออฟไลน์ ออฟไลน์

กระทู้: 2,574



ดูรายละเอียด
« ตอบ #1 เมื่อ: 23 พฤษภาคม 2009, 11:06:02 »

 Embarrassed ยกตัวอย่างกรณีเป็นรูปภาพนะคับ

ถ้า fix ไว้ว่าให้อัพโหลดเฉพาะ .jpg อย่างเดียวก็ไม่ต้องเก็บไรเลยก็ได้คับ รันแต่ไอดีพอ แล้วเวลาแสดงไฟล์ก็ใช้

<img src="<? echo"$dir_path"; ?>/<? echo"$dir_folder"; ?>/<? echo"$Field[id]"; ?>.jpg" alt="" />

โดยที่

$dir_path เป็นไดนามิก root path เช่น "http://www.mysite.com "
$dir_folder เป็นไดนามิก folder สำหรับเก็บรูปเช่น "uploads/uppic"
$Field[] เป็นตัวแปร array ที่ดึงมาจาก database

แต่ถ้าในกรณีให้อัพได้หลายนามสกุล ก็ให้เก็บชื่อไฟล์ด้วย โดยเขียนให้ชื่อไฟล์รันจากไอดีเป็นหลัก โดยตรวจสอบจาก $_FILES['$file']['type'] ที่รับเข้ามาเพื่อเลือกใส่นามสกุล โดยอาจจะสร้าง table โดยมีโครงสร้างสัก 2 ฟิลด์เช่น id(A_I), picname ซึ่งในส่วนของ picname นี้ให้เก็บชื่อไฟล์โดยรับชื่อจากไอดี และใส่นามสกุลจาก type ที่ดักเก็บมา เช่น  1.jpg, 2.gif, 3.png

แต่หากในกรณีให้บริการด้านการอัพโหลดไฟล์ อาจต้องการความปลอดภัยในอีกระดับที่มากกว่าการอัพไฟล์ไว้ใช้เองภายในไซต์ หากไม่ใช้ตัวเลือก mod_rewrite อาจจะเก็บชื่อไฟล์เป็นรหัส md5 หรือจะ encode ด้วยรหัสอื่น หรือจะสร้างรหัส encode เฉพาะไซต์เราเองก็ได้ ซึ่งนอกเหนือจาก ไอดี และชื่อไฟล์ อาจมีฟิลด์อื่นๆ ไว้เป็น options เสริมในเรื่องของบริการ เช่นฟิลด์ไว้เก็บ page view ฟิลด์ไว้เก็บ ip address ของผู้อัพโหลดหรือแก้ไขไฟล์ ฟิลด์ไว้เก็บ options อื่นๆ ซึ่งส่วนนี้แล้วแต่ผุ้ออกแบบระบบจะสรรค์สร้าง คับ คงแนะนำมากกว่านี้ไม่ได้ แต่หลักๆ แล้วในเรื่องของการอัพโหลดไฟล์ง่ายๆ ก็แทบไม่ต้องเก็บอะไรเลย บางงานถ้าใช้ไม่หนักหรือเป็นการใช้ภายในไซต์เองที่ไม่ต้องเสี่ยงเรื่องความปลอดภัยของระบบมากนัก ไม่จำเป็นต้องใช้ db ก็ได้คับ เขียน filemaneger ขึ้นมาใช้เองจะสะดวกกว่า
บันทึกการเข้า
หน้า: [1]   ขึ้นบน
พิมพ์