|
|
|
ช่วยอธิบายเรื่องรูปภาพกับฐานข้อมูลหน่อยค่ะ เวลาที่เราจะเก็บรูปลงฐานข้อมูลอ่ะค่ะ |
|
|
|
|
|
|
|
ถ้าเป็นผมนะ เวลา upload รูปผมจะเก็บไฟล์รูปที่โฟเดอร์ ในที่นี่ชื่อโฟเดอร์ images แล้วเก็บชื่อรูปไว้ใน db ในที่นี้คือฟิวด์ img_name
เวลาเรียกใช้ก็ query ชื่อรูปมาแล้วมา เช่น
Code (PHP)
<?php
$sql = "SELECT img_name, FROM img_tbl ";
$result = mysql_query($sql);
while($rs = mysql_fetch_array($result))
{
echo "<img src='images/$rs[img_name]' border='0' >";
}
?>
หรือรอ rep ล่าง อาจจะมีวิธีที่ดีกว่าผม
|
|
|
|
|
Date :
2009-08-26 21:14:17 |
By :
ICrazyBoy |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ตอนแรกก็ต้องมี upload ก่อนอ่ะครับ
1.เราก็ทำ form สำหรับ upload ก่อน
2.สร้าง databse เพื่อเก็บ ชื่อรูปครับ ถ้าเก็บวันที่ด้วย ก็เพิ่ม filed เข้าไป
3.พอมี DB แล้ว ก็กลับมาที่ form สำหรับ upload เขียน code ลง database และกำหนดที่เก็บรูป
4.แล้ว ไฟล์รูปจะไปอยู่ ไหน ก็อยู่ใน folder ใน www นั้นแหล่ะครับ อยู่ที่เราตั้งจะให้มันเก็บไว้ที่ไหน
5.ถ้าจะแสดงรุป ก็ให้ดึงชื่อรูป+ที่อยู่รูป จากฐานข้อมูลและที่อยู่รูป
6.ถ้าทำได้แล้วค่อยปรับแต่ง ต่างๆครับ เช่น เช็คขนาดไฟลืบ้าง เปลี่ยนชื่อรูป อันตโนมัส บ้าง
7.สิ่งที่แน่ะนำ ลองหาโหลด code upload ที่เซี่ยนเค้าให้มา ลองใช้ครับ จะได้เข้าใจลึกซึ้งยิ่งขึ้น
ประมาณนี้ครับ รอท่านอื่นมายกตัวอย่าง code ละกันนะครับ
|
|
|
|
|
Date :
2009-08-26 21:20:43 |
By :
phillips |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ยังไม่ค่อยเข้าใจอ่ะค่ะ เผอิญจะทำสมัครสมาชิก แล้วให้สมาชิกอัพรูปด้วยอ่ะค่ะ
จะทำยังงัยดีคะ ขอบคุนคร่า
|
|
|
|
|
Date :
2009-08-26 22:20:33 |
By :
dektatee |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ในตารางที่จะใช้เก็บรูปภาพ จะต้องมีเขตข้อมูลที่มีชนิดเป็น BLOB (เก็บภาพได้ 64 k หากต้องการใหญ่กว่านี้ก็จะเป็น MEDIUMBLOB หรือ LONGBLOB) เช่น tb_image ประกอบด้วยเขตข้อมูล
id มีชนิดเป็นตัวอักษร
detail มีชนิดเป็นตัวอักษร
image มีชนิดเป็น BLOB
หลังจากที่สร้างตารางเสร็จแล้ว ก็สร้างฟอร์มที่สามารถอัพโหลดรูปภาพได้ เช่น
<FORM NAME='upload' METHOD='post' ACTION='receive.php' ENCTYPE='multipart/form-data'>
<INPUT TYPE='file' NAME='fileimage'>
<INPUT TYPE='submit' VALUE='UPLOAD'>
</FORM>
จากนั้นก็จะเขียนคำสั่งรับไฟล์จากฟอร์มในไฟล์ที่ฟอร์มที่ Action ไปหา จากตัวอย่างก็จะเป็น receive.php
::::
::::
if (!ereg("^image/",$_FILES['fileimage']['type'])) //ตรวจสอบชนิดไฟล์
{ die ("ไม่สามารถอัพโหลดได้ เพราะไม่ใช่ไฟล์รูปภาพ");}
if ($_FILES['fileimage']['size'] > 65535) //ตรวจขสอบขนาดของไฟล์
{ die ("ไม่สามารถอัพโหลดได้เพราะขนาดไฟล์ใหญ่เกิน 64k");}
$fileName = $_FILES['fileimage']['tmp_name'];
$fsize = filesize($fileName); //หาขนาดไฟล์เพื่ออ่านข้อมูล
$handle = fopen($fileName, 'r'); //เปิดไฟล์
$data = fread($handle, $fsize); //อ่านข้อมูลตามขนาด
$data = addslashes($data); //เพิ่มเครื่องหมาย \ เข้าไปเพื่อป้องกันอักขระพิเศษ
fclose($handle); //ปิดไฟล์
$slq = "INSERT INTO tb_image (id, detail, image) VALUES ('001', 'ภาพตัวอย่าง', '$data')";
$result = mysql_query($sql);
แค่นี้ก็อัพไฟล์เข้าฐานข้อมูลเรียบร้อยแล้วครับ อย่าลืมติดต่อดาต้าเบสก่อน อินเสิร์ตข้อมูลด้วยนะครับ
|
|
|
|
|
Date :
2009-08-26 22:46:02 |
By :
NanoTHoro |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลืมมมมม
ลืมบอกวิธีเอาออกมาแสดงอะครับ แต่ไม่ทราบว่าต้องการหรือเปล่า ถ้าต้องการก็บอกมานะครับ
|
|
|
|
|
Date :
2009-08-26 22:53:25 |
By :
NanoTHoro |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
งง คิดเห็นที่ 5 ทามมายไม่ขึืนชืิ่อเราหว่า....
|
|
|
|
|
Date :
2009-08-26 22:55:56 |
By :
NanoTHoro |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ต้องการคร่า ทั้งตอนทำฐานข้อมูล การเรียกรูปมาแสดงคร่า
ขอบคุนสำหรับทุกคำแนะนำคร่า
|
|
|
|
|
Date :
2009-08-27 07:48:29 |
By :
dektatee |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
จะบอกว่าเอาทั้งระบบเลยอะจิ ได้ครับ แต่ต้องรอกลางคืนนะครับ กลางวันวันนี้งานเข้า ม่ะว่าง หรือท่านใดว่างช่วยน้องเขาก่อนนะคร๊าบบบบ
|
|
|
|
|
Date :
2009-08-27 10:04:23 |
By :
NanoTHoro |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 00
|