|
|
|
ช่วยแก้ไขฟังก์ชันอัพโหลดรูปภาพให้หนูหน่อยค๊ะ |
|
|
|
|
|
|
|
โค๊ดด้านล่างนี้เป็นโค๊ด การอัพโหลดรูปภาพไปที่ server โดยจะทำการ resize ขนาดให้กว้าง 300 px หนูอยากแก้ไขโค๊ดให้ไม่มีการ resize
จะต้องแก้โค๊ดอย่างไรค๊ะ
Code (PHP)
//the new width of the resized image.
$img_thumb_width = 300; // in pixcel
$file_type = $_FILES['img_path']['type'];
$file_name = $_FILES['img_path']['name'];
$file_size = $_FILES['img_path']['size'];
$file_tmp = $_FILES['img_path']['tmp_name'];
//check if you have selected a file.
if(!is_uploaded_file($file_tmp)){
die ('You need to select an image');
exit(); //exit the script and don't do anything else.
}
//check file extension
$ext = strrchr($file_name,'.');
$ext = strtolower($ext);
if (($extlimit == "yes") && (!in_array($ext,$limitedext))) {
die ('File extension not allowed');
exit();
}
//get the file extension.
$getExt = explode ('.', $file_name);
$file_ext = $getExt[count($getExt)-1];
//create a random file name
$rand_name = md5(time());
$rand_name= rand(0,999999999);
//get the new width variable.
$ThumbWidth = $img_thumb_width;
//keep image type
if($file_size){
if($file_type == "image/pjpeg" || $file_type == "image/jpeg"){
$new_img = imagecreatefromjpeg($file_tmp);
}elseif($file_type == "image/x-png" || $file_type == "image/png"){
$new_img = imagecreatefrompng($file_tmp);
}elseif($file_type == "image/gif"){
$new_img = imagecreatefromgif($file_tmp);
}
//list width and height and keep height ratio.
list($width, $height) = getimagesize($file_tmp);
$imgratio=$width/$height;
if ($imgratio>1){
$newwidth = $ThumbWidth;
$newheight = $ThumbWidth/$imgratio;
}else{
$newheight = $ThumbWidth;
$newwidth = $ThumbWidth*$imgratio;
}
//function for resize image.
if (function_exists(imagecreatetruecolor)){
$resized_img = imagecreatetruecolor($newwidth,$newheight);
}else{
die("Error: Please make sure you have GD library ver 2+");
}
imagecopyresized($resized_img, $new_img, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
//save image
ImageJpeg ($resized_img,"$path_thumbs/$rand_name.$file_ext");
ImageDestroy ($resized_img);
ImageDestroy ($new_img);
$img_path = "$path_thumbs/$rand_name.$file_ext";
}
Tag : PHP, MySQL
|
|
|
|
|
|
Date :
2012-10-10 10:00:21 |
By :
dferru |
View :
1059 |
Reply :
9 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ถ้าแก้ไขโค๊ดเดิมอย่างนี้ นะครับผมว่า
วางโค๊ดข้างบนง่ายกว่าอีกนะครับ
|
|
|
|
|
Date :
2012-10-10 10:58:32 |
By :
compiak |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
รองไปสร้างฟังชั่น getimagesize ก่อนด้านบน แล้วเอาค่าตัวแปร Width กับ Height ที่ได้จาก getimagesize ไปแทนที่ตัวแปร
$newwidth = ตัวแปรที่ getimagesize ของ Width
$newheight = ตัวแปรที่ getimagesize ของ Height
รองดูครับ
|
|
|
|
|
Date :
2012-10-10 11:26:36 |
By :
alderman |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<?php
$imgsize = getimagesize("Path File");
echo $imgsize[0]; //จะได้ความกว้างของรูปภาพ
echo $imgsize[1]; //จะได้ความสูงของรูปภาพ
?>
|
|
|
|
|
Date :
2012-10-11 12:23:29 |
By :
alderman |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลองทำตามที่ผมให้ตัวอย่างไปนะครับ
|
|
|
|
|
Date :
2012-10-12 12:28:24 |
By :
compiak |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เออ... ปวดใจแทนหลายคนที่เข้ามาช่วยจัง T_T
|
|
|
|
|
Date :
2012-10-12 13:51:42 |
By :
pokultra |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 00
|