A-AA+then

การอัปโหลดรูปไปยังฐานข้อมูลโดยตรง และสามารถตรวจสอบรูปก่อนการอัปโหลดได้ด้วย

<?
  $picture = $_FILES[picture];//รูปที่รับมาจากการอัปโหลด
  $config[imagewidth] = 600;//ความกว้างของรูปอัพโหลด

  if ($picture[tmp_name] != "") {//มีรูปอัปโหลดมาด้วย
   $imgtype = $picture[type];//ชนิดของรูป
   $imgname = $picture[name];//ชื่อของรูป


   //ตรวจสอบชนิดของรูปที่ีอัปโหลดมา
   if ($imgtype == "image/gif") $ext = ".gif";
   elseif ($imgtype == "image/png") $ext = ".png";
   elseif ($imgtype == "image/jpg" || $imgtype == "image/jpeg" || $imgtype == "image/pjpeg") $ext = ".jpg";
   if (isset($ext)) {//รูปถูกต้อง เป็นรูปภาพ ตรวจสอบความกว้างของรูป
    $image_info = getimagesize($picture[tmp_name]);
    if ($image_info[0] > $config[imagewidth]) {
  echo "ความกว้างของรูปมากกว่า $config[imagewidth] pixels<br />กรุณาตรวจสอบและแก้ไข<br /><a href='javascript:history.back(1)'>กลับไปแก้ไข</a>";
  exit();
    }
   } else {//ไม่ใช่รูปภาพ
   echo "ไม่ใช่ไฟล์รูปภาพ .gif .jpg .png<br />กรุณาตรวจสอบก่อนส่ง<br /><a href='javascript:history.back(1)'>กลับไปแก้ไข</a>");
    exit();
   }
   $handle = fopen($picture[tmp_name], "rb");//เปิดไฟล์เพื่ออ่าน (binary)
   $imgdata = fread($handle, filesize($picture[tmp_name]));//อ่านไฟล์ไว้ที่ $imgdata
   $imgdata = addslashes($imgdata);
   fclose($handle);//เปิดแล้วปิดไฟล์ด้วย
  }

  //บันทึกลงฐานข้อมูล
  $sql = "INSERT INTO `$db_table` ( `wb_picture` , `wb_pictype` , `wb_picname` ) VALUES ( '$imgdata', '$ext' , '$imgname' );";
  $query = mysql_query($sql);
?>

Relate

^