|
|
|
เมื่อมีการ resize ภาพแล้ว ให้ทำการ crop ภาพ อีกที และ Multiple Upload แต่ได้แค่ไฟล์เดียว |
|
|
|
|
|
|
|
หลังจาก resize ภาพ thumb (ชุดที่2) แล้ว ต้องการจะให้ crop ภาพอีกที่ เพื่อให้ภาพเท่ากันทุกภาพ และไม่ให้ภาพบิดเบี้ยว
เพราะถ้ากำหนด ขนาดกว้างยาว ตรงที่ resize เลย ภาพมันจะเบี้ยวๆ ไม่ทราบว่าจะต้องเพื่อส่วนของการ crop ภาพยังไงคะ
อีกเรื่องคืออันนี้จะเป็นการ Multiple Upload และ CreateElement Input File Upload แต่เวลาที่อัพ 2 ไฟล์ ขึ้นไป ผลลัพธ์ได้แค่ 1 ไฟล์ ไม่รู้โค้ดผิดตรงไหน
Code (PHP)
<?
if ($group == "0"){
echo "<script>alert('ยังไม่ได้เลือกอัลบัมค่ะ !!!');history.back();</script>";
exit();
}
for($i=0;$i<count($_FILES["filUpload"]["name"]);$i++)
{
if($_FILES["filUpload"]["name"][$i] != ""){
if(trim($_FILES["filUpload"]["tmp_name"][$i]) != "")
{
$images = $_FILES["filUpload"]["tmp_name"][$i];
$imagename = $_FILES["filUpload"]["name"][$i];
$type = substr($_FILES["filUpload"]["name"][$i],-4);
$pd=date("YmdHis");
$newpicname ="$p"."$type";
$thumb_images = "thumb_"."$pd"."$type";
$width=120; //*** Fix Width & Heigh (Autu caculate) ***//
$size=GetimageSize($images);
$height=round($width*$size[1]/$size[0]);
$images_orig = ImageCreateFromJPEG($images);
$photoX = ImagesX($images_orig);
$photoY = ImagesY($images_orig);
$images_fin = ImageCreateTrueColor($width, $height);
ImageCopyResampled($images_fin, $images_orig, 0, 0, 0, 0, $width+1, $height+1, $photoX, $photoY);
ImageJPEG($images_fin,"PhotoThumb/".$thumb_images,100);
ImageDestroy($images_orig);
ImageDestroy($images_fin);
$new_images = "$pd"."$type";
//copy($_FILES["filUpload"]["tmp_name"],"Photo/".$_FILES["filUpload"]["name"]);
$width=800; //*** Fix Width & Heigh (Autu caculate) ***//
$size=GetimageSize($images);
if($size[0] <= 800) {
move_uploaded_file($_FILES["filUpload"]["tmp_name"][$i],"Photo/$new_images");
// ค่อย resize
} else if ($size[0] >= 800) {
$height=round($width*$size[1]/$size[0]);
$images_orig = ImageCreateFromJPEG($images);
$photoX = ImagesX($images_orig);
$photoY = ImagesY($images_orig);
$images_fin = ImageCreateTrueColor($width, $height);
ImageCopyResampled($images_fin, $images_orig, 0, 0, 0, 0, $width+1, $height+1, $photoX, $photoY);
ImageJPEG($images_fin,"Photo/".$new_images,100);
ImageDestroy($images_orig);
ImageDestroy($images_fin);
}
//echo "Resize Successful.<br>";
//*** Insert Record ***//
$objConnect = mysql_connect("localhost","somkiatsaf","somkiat") or die("Error Connect to Database");
$objDB = mysql_select_db("somkiatsaf_data");
$strSQL = "INSERT INTO Photo ";
$strSQL .="(PhotoID,AlbumID,PhotoName,ThumbName) VALUES ('','$group','$new_images','$thumb_images')";
$objQuery = mysql_query($strSQL);
}
}}
echo "<script>alert(' Upload Success !!! ');window.location='form_photo_upload.php';</script>";
?>
Tag : PHP, MySQL
|
ประวัติการแก้ไข 2011-11-24 14:28:43
|
|
|
|
|
Date :
2011-11-24 13:28:28 |
By :
AnnYZaa |
View :
1501 |
Reply :
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ImageDestroy($images_orig); << temp ไฟล์ ต้น ฉบับที่อับเข้ามา ถ้าเรา Destroy ออกไป ก่อน อันที่ 2 ที่จะ resize มันจะ ไม่เจอไฟล์ต้นฉบับที่จะ resize อีกทีนึง
|
|
|
|
|
Date :
2011-11-24 17:41:51 |
By :
Thank You |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 02
|