|
|
|
อัพโหลดภาพแล้วทำการResizeภาพเข้าเว็บ แต่เกิด error ทำไงดีช่วยน่ะน่ะค่อ |
|
|
|
|
|
|
|
error ที่ฟ้อง
Warning: imagejpeg(): Unable to open './thumb/20070500203.jpg' for writing in
ช่วยแก้หน่อยน่ะค่ะนั่งมาหลายวันแล้ว
<?
include ("../config.php");
include ("authen.php");
//$page_g="templete";
include "../function/spaw/spaw_control.class.php";
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-874">
<title>Product</title>
<link href="../style.css" rel="stylesheet" type="text/css">
<script language="javascript" src="../function/menu.js"></script>
<script language="javascript" src="../function/cookie.js"></script>
<?
include ("../link.php");
include ("../function/javascript.php");
?>
</head>
<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<div id="spiffycalendar" class="text"></div>
<link rel="stylesheet" type="text/css" href="../function/spiffyCal/spiffyCal_v2_1.css">
<script language="JavaScript" src="../function/spiffyCal/spiffyCal_v2_1.js"></script>
<script language="javascript">var dateAvailable = new ctlSpiffyCalendarBox ("dateAvailable", "form1", "date", "btnDate1", "<?=Date("Y-m-j")?>", scBTNMODE_CUSTOMBLUE);</script>
<?
include "../class/class.db.php";
include "../class/class.general.php";
$uploadDir = './p_photo/' ; // ไดเรกทอรี่หรือห้องที่จะให้เก็บไฟล์ภาพจริง
$thumbDir = './thumb/' ; // ไดเรกทอรี่หรือห้องที่จะให้เก็บภาพย่อ Thumbnails
$cata_id = $_REQUEST['cata_id']; // รับค่ารหัสหมวดหมู่จากฟอร์ม (ว่าภาพที่ส่งเข้ามาจัดอยู่ในหมวดใด)
$gen = new general ();
$time_start = $gen -> getmicrotime ();
$db = new DB ($host, $user, $password, $dbname);
$select = $db -> select_query ("SELECT * FROM company_detail where id = '1'");
$row = $db -> fetch_arr ($select);
$db -> disconnect ();
?>
<?
Foreach($_FILES["userfile"]["error"] as $key => $error){
if($error == 0){ # UPLOAD_ERR_OK ถ้าอัพโหลดสำเร็จ ไม่ Error
$title = trim($_REQUEST['title'][$key]); // ข้อความอธิบายประกอบภาพ
$size = $_FILES["userfile"]["size"][$key]; // ขนาดไฟล์
$type = $_FILES["userfile"]["type"][$key]; // ชนิดไฟล์
$tmp_name = $_FILES["userfile"]["tmp_name"][$key]; // ไฟล์ชั่วคราว Temp
$fname = $_FILES["userfile"]["name"][$key]; // ชื่อไฟล์
$uploadfile = $uploadDir . basename($fname); // พาทและชื่อไฟล์ที่จะส่งไปเก็บ
$thumbfile = $thumbDir . $fname; // พาทและชื่อไฟล์ Thumbnails
if(!ereg("^image/pjpeg" , $type)){ // เช็คว่าเป็นภาพชนิด Jpg หรือไม่
echo"<br>upload ไม่ได้ เฉพาะ JPG เท่านั้น กรุณาเช็คชนิดหรือขนาดไฟล์ ";
die; // หยุุดโปรแกรม
}
$limit = 125000; // ตั้งขนาดสูงสุดที่ให้อัพโหลดภาพได้ (ไบท์)
if($size > $limit){ // ตรวจเช็คขนาดไฟล์ว่าเกินลิมิตหรือไม่
echo "<br> upload ไม่ได้ ขนาดไฟล์ใหญ่เกินกว่า $limit ไบท์ ";
die; // หยุดโปรแกรม
}
// ย้ายไฟล์ที่อัพโหลด เข้าห้องหรือพื้นที่ photo จากนั้นรายงานผลออกทางบราวเซอร์
move_uploaded_file($tmp_name, "$uploadDir$fname");
echo "$key : $title , $size Byte $type $fname , $thumbfile<br>\n";
// ตรวจเช็คว่าฐานข้อมูลมีไฟล์ชื่อนี้หรือยัง ถ้ามีแล้วไม่ต้องบันทึกเข้าฐานข้อมูล
// $sql = "SELECT photo From product_data WHERE photo='$fname' ";
$db2 = new DB ($host, $user, $password, $dbname);
$sql2 = $db2 -> select_query ("SELECT photo From product_data WHERE photo='$fname' ");
// $result2 = mysql_query($sql2);
if(mysql_fetch_array( $sql2 )){
echo "<b> มี $fname อยู่แล้ว ไม่ต้อง Add ซ้ำ ! </b><br>";
}else{ // ถ้ายังไม่มีชื่อไฟล์นี้ในฐานข้อมูล ให้ insert เข้าไป
$sql2 = "INSERT into product_data ( name, des, photo, date_add, visible, catalog, price, s_price, qty, shipping_method) values ('$name', '$des', '$fname', '$date', '1', '$cata_id', '$price', 's_price', '$qty', '$shipping_method' ) ";
$result = $db2 -> select_query( $sql2 ) ;
if( !$result ){
echo("เอ็กซิคิวต์คำสั่ง SQL ไม่ได้ " . mysql_error() ); // รายงาน ถ้ามี Error
}
} // end if mysql_fetch_array
//*** เข้าสู่ส่วนโปรแกรม ทำหน้าที่สร้างภาพย่อ Thumbnails *****
list($w1,$h1) = getimagesize($uploadfile); // หาขนาดกว้า่ง สูง ของภาพ
$quality = 90; // กำหนด % คุณภาพของภาพย่อ Thumbnails ที่จะสร้าง
// 2) ถ้าต้องการกำหนดขนาดว่าย่อลงจากภาพต้นฉบับกี่ % ให้ใช้ 3 บรรทัดนี้\
$percent = 0.50; // 0.25 คือ 25 %
$w2 = $w1 * $percent;
$h2 = $h1 * $percent;
// สร้างภาพย่อ Thumbnails
$im = imageCreateTrueColor($w2+4, $h2+4); // +4 พิกเซลขยายทำเงาที่ขอบภาพ
$im1 = imageCreateFromJpeg($uploadfile);
// ทำเงาที่ขอบภาพ (โดยสีเงาจะทำเป็น 2 ส่วนคือมืดมาก dark , และจาง light เพื่อให้สวยงาม )
$dark = ImageColorAllocate($im,185,185,185); // มืดมาก
$light = ImageColorAllocate($im,230,230,230); // สีจาง
$white = ImageColorAllocate($im,254,254,254);
imagefilledRectangle($im, 0, 0, $w2+3, $h2+3, $white); // ลงสีขาวพื้นไปก่อน
imagefilledRectangle($im, 4, 4, $w2+4, $h2+4, $light); // ลงเงาสีจาง
imagefilledRectangle($im, 3, 3, $w2+2, $h2+2, $dark); // ลงเงามืด
// ทำการย่อภาพ ถ้า GD เวอร์ชั่นเก่าให้ใช้ imageCopyResized ได้ (แต่คุณภาพด้อยกว่าเล็กน้อย
imageCopyResampled($im, $im1, 0, 0, 0, 0, $w2, $h2, $w1, $h1);
#imageCopyResized($im, $im1, 0, 0, 0, 0, $w2, $h2, $w1, $h1);
// หากต้องการเขียนโลโก้ หรือข้อความชื่อเว็บไซท์ลงบน Thumbnails สามารถทำได้ที่ช่วงนี้
// imageString($im, 5, 5, $h2 - 20,"website.com", $light); // เขียนข้อความ
imagejpeg($im, $thumbfile, $quality); // เซฟภาพ Thumbnail ลงเป็นไฟล์
imageDestroy($im); // คืนหน่วยความจำให้ระบบ
imageDestroy($im1);
echo "<hr color=red noshad size=1>";
} // จบ if($error = 0) ถ้าอัพโหลดสำเสร็จ ไม่Error
} // จบ Foreach
?>
<hr /><a href="uploadform.php">Upload เพิ่ม </a> |
<a href=<?= $uploadfile ?> target=_blank>View Photo</a>
<a href=<?= $thumbfile ?> target=_blank>View thumb</a>
<? include ("footer.php"); ?>
</body>
</html>
<script language="JavaScript">
function check () {
var v1 = document.form1.catalog.value;
var v2 = document.form1.photo.value;
var v3 = document.form1.name.value;
if ( v1.length==0) {
alert ("please input catalog");
document.form1.catalog.focus ();
return false;
} else if (v2.length == 0) {
alert ("please input phpto");
document.form1.photo.focus ();
return false;
} else if (v3.length == 0) {
alert ("please input name");
document.form1.name.focus ();
return false;
} else return true;
}
</script>
Tag : - - - -
|
|
|
|
|
|
Date :
27 มิ.ย. 2550 10:48:29 |
By :
น้ำฝน |
View :
2325 |
Reply :
3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
จ้างมั้ยคะ
พี่ออน MSN ทั้งวันนะคะ เข้าๆ - ออกๆ
MSN : [email protected]
|
|
|
|
|
Date :
27 มิ.ย. 2550 17:31:07 |
By :
บิ้ง |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณจ้า ทำได้แล้วละ ขอบคุณกับทุกคำตอบน่ะ
|
|
|
|
|
Date :
28 มิ.ย. 2550 09:24:34 |
By :
น้ำฝน |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 04
|