วันพุธที่ 21 มีนาคม พ.ศ. 2555

การอัปโหลดรูปภาพเก็บลงฐานข้อมูล


การอัปโหลดรูปภาพเก็บลงฐานข้อมูล

jeerawan | 19-01-2554 | เปิดดู 7620 | ความคิดเห็น 8
  การอัปโหลดรูปภาพลงฐานข้อมูล ในที่นี้จะใช้วิธีเก็บรูปภาพไว้ในโฟลเดอร์ และเก็บชื่อภาพไว้ในฐานข้อมูล
ซึ่งวิธีนี้จะไม่ทำให้ฐานข้อมูลบวม                                                                                                                                                                                                                                                                                                                                                                                                                         
1. สร้างฟอร์มในการอัปโหลด
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-874" />
</head>
<body>
<form action="" method="post" enctype="multipart/form-data" name="form1" id="form1">
<input type="file" name="file" />
<input type="submit" name="Submit" value="อัปรูป" />
<input name="hidAction" id="hidAction" type="hidden" value="Add"> //ส่งค่าแบบ hidden
</form>
</body>
</html>
2.โครงสร้างในฐานข้อมูล
CREATE TABLE `image` (
  `id` int(11) NOT NULL auto_increment,
  `image` tinytext NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=7 ;


3. ส่วนของโคดในการอัปโหลด
<?
if($hidAction == "Add") { 
                           //เช็คค่า hidAction ที่ส่งมาถ้าเท่ากับ Add ให้โปรแกรทำงานต่อ
    $date = date("U");                                  // สร้าเลข 10 หลักมาจากเวลาเพื่อนำไปเป็นชื่อรูปภาพ
    if($file != "") {
        $type = getimagesize($file); 
           // หาประเภทของรูปภาพ
        if($type[2] == 1) {
            $image = $date."_img.gif";  
        // เมื่อรูปเป็น .gif
        } else if($type[2] == 2) {
            $image = $date."_img.jpg";   
      // เมื่อรูปเป็น .jpg
        }
        else  {
            $image = $date."_img.bmp";  
    // เมื่อรูปเป็น .bmp
        }
      
        copy($file, "images/$image");  
         // copy รูปไว้ในโฟลเดอร์ image
        chmod("images/$image", 0777);     // ทำการ changmode
    }
                                       
    $host="localhost";
    $db_username="root";
    $db_password="root";

    $dbname="test";                    //ชื่อฐานข้อมูล
    $connect = mysql_connect($host,$db_username,$db_password);
    if(!$connect){
        echo "ไม่สามารถติดต่อฐานข้อมูลได้"; exit();
    }

  
    $sql = "insert into image (id, image) values ('', '$image') ";  //เพิ่มข้อมูลลงดาต้าเบส โดยเก็บชื่อรูปไว้
    $dbquery = mysql_db_query($dbname, $sql);
}
?>

ไม่มีความคิดเห็น:

แสดงความคิดเห็น