Temelde istediğim
yüklenen resim bir klasöre küçük hali başka bir klasöre dahada büyük hali ile yuklensin ve bu resimlerin adlarını veritaanına yükletebileyim idi.
Buyuk halini klasöre yukletmeden ve isimlerini veritabanına kayıt etmede sorunum ok ama küçülyyüğüm resimin kalitesi çok kötüleşiyor. Kimi resimlerde adeta görünmeyecekkadar kararıyor bile. Ayrıca thumbluk resimin boyunu oranınca küçültemiyorum. Mesela 180 e 140 olarak belirlediğim küçük resimin max boyutunu resim dolduramıyorsa bile gri arka fon ile o belirlediğim ebatlara ulaşıyor. Buda kötü görüntü sebebi..
Lafı daha faza uzatmadan kodu vereyimde siz deneyerek görün. Hem bu arada resim scripti v.b. istekle bulunan arkadaşlara bu hali ile bile güzel kaynak olur.
<?php
//veritabaný ayarlarým
$dbhost = "localhost";
$dbadi = "resimcalismalari";
$dbuser = "root";
$dbpass = "";
$baglanti = @mysql_connect($dbhost,$dbuser,$dbpass);
if(! $baglanti) die("MYSQL Baglantisi saglanamadi");
@mysql_select_db($dbadi,$baglanti) or die("Veritabanina baglanti saglanamadi");
mysql_query("SET NAMES 'latin5'");
mysql_query("SET CHARACTER SET latin5");
mysql_query("SET COLLATION_CONNECTION = 'latin5_turkish_ci'");
//veritabaný ayarlarý bitþi
/**
* SORUNLAR
1-THUMBNAİL BOZUK ÇIKIYOR
2-THUMBNAİL BOYUTU BELİRLİ KALIPLARDA OLUYOR. RESMİN BOYUNCA ORANTILI KUCULEMİYOR
*/
$upload_image_limit = 5; // How many images you want to upload at once?
$upload_dir = ""; // default script location, use relative or absolute path
$enable_thumbnails = 1 ; // set 0 to disable thumbnail creation
$max_image_size = 1024000 ; // max image size in bytes, default 1MB
##################### THUMBNAIL CREATER FROM GIF / JPG / PNG
function make_thumbnails($updir, $img){
$thumbnail_width = 180;
$thumbnail_height = 140;
$thumb_preword = "thumb_";
$arr_image_details = GetImageSize("$updir"."$img");
$original_width = $arr_image_details[0];
$original_height = $arr_image_details[1];
if( $original_width > $original_height ){
$new_width = $thumbnail_width;
$new_height = intval($original_height*$new_width/$original_width);
} else {
$new_height = $thumbnail_height;
$new_width = intval($original_width*$new_height/$original_height);
}
$dest_x = intval(($thumbnail_width - $new_width) / 2);
$dest_y = intval(($thumbnail_height - $new_height) / 2);
if($arr_image_details[2]==1) { $imgt = "ImageGIF"; $imgcreatefrom = "ImageCreateFromGIF"; }
if($arr_image_details[2]==2) { $imgt = "ImageJPEG"; $imgcreatefrom = "ImageCreateFromJPEG"; }
if($arr_image_details[2]==3) { $imgt = "ImagePNG"; $imgcreatefrom = "ImageCreateFromPNG"; }
if( $imgt ) {
$old_image = $imgcreatefrom("$updir"."$img");
$new_image = imagecreate($thumbnail_width, $thumbnail_height);
imageCopyResized($new_image,$old_image,$dest_x,
$dest_y,0,0,$new_width,$new_height,$original_width,$original_height);
$imgt($new_image,"$updir"."$thumb_preword"."$img");
}
}
################################# UPLOAD IMAGES
foreach($_FILES as $k => $v){
$img_type = "";
### $htmo .= "$k => $v<hr />"; ### print_r($_FILES);
if( !$_FILES[$k]['error'] && preg_match("#^image/#i", $_FILES[$k]['type']) && $_FILES[$k]['size'] < $max_image_size ){
$img_type = ($_FILES[$k]['type'] == "image/jpeg") ? ".jpg" : $img_type ;
$img_type = ($_FILES[$k]['type'] == "image/gif") ? ".gif" : $img_type ;
$img_type = ($_FILES[$k]['type'] == "image/png") ? ".png" : $img_type ;
$yeniad = substr(uniqid(md5(rand())), 0,35);// bjk
$img_rname = $yeniad.$_FILES[$k]['name'];
$img_path = $upload_dir.$img_rname;
copy( $_FILES[$k]['tmp_name'], $img_path );
if($enable_thumbnails) make_thumbnails($upload_dir, $img_rname);
$feedback .= "Image and thumbnail created $img_rname<br />";
//bjk
$resimkucuk = "thumb_".$img_rname;
$yukle = mysql_query("INSERT INTO resim (resimnormal,resimkucuk) values ('$img_rname','$resimkucuk') ");
if($yukle){
echo"Resimler veritabanina Kaydedildi ";
}else{
echo"Hata Resim Veritabanina Kaydedilemedi";
}
//bjk
}
}
############################### HTML FORM
while($i++ < $upload_image_limit){
$form_img .= '<label>Image '.$i.': </label> <input type="file" name="uplimg'.$i.'"><br />';
}
$htmo .= '
<p>'.$feedback.'</p>
<form method="post" enctype="multipart/form-data">
'.$form_img.' <br />
<input type="submit" value="Upload Images!" style="margin-left: 50px;" />
</form>
';
echo $htmo;
?>
yardımlarını esirgemeyen Herkese teşekkürler