Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > อัพโหลดภาพแล้วทำการResizeภาพเข้าเว็บ แต่เกิด error ทำไงดีช่วยน่ะน่ะค่อ



 

อัพโหลดภาพแล้วทำการResizeภาพเข้าเว็บ แต่เกิด error ทำไงดีช่วยน่ะน่ะค่อ

 



Topic : 014325

Guest




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 : - - - -







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 27 มิ.ย. 2550 10:48:29 By : น้ำฝน View : 2325 Reply : 3
 

 

No. 1

Guest


จ้างมั้ยคะ
พี่ออน MSN ทั้งวันนะคะ เข้าๆ - ออกๆ
MSN : [email protected]







Date : 27 มิ.ย. 2550 17:31:07 By : บิ้ง
 


 

No. 2

Guest


ปรึกษา ฟรีไม่ต้องจ้าง [email protected]
Date : 28 มิ.ย. 2550 09:02:55 By : ...
 

 

No. 3

Guest


ขอบคุณจ้า ทำได้แล้วละ ขอบคุณกับทุกคำตอบน่ะ
Date : 28 มิ.ย. 2550 09:24:34 By : น้ำฝน
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : อัพโหลดภาพแล้วทำการResizeภาพเข้าเว็บ แต่เกิด error ทำไงดีช่วยน่ะน่ะค่อ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 04
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่