if (isset($_POST['image'])) {
$filename = $_FILES['image']['name'];
$temporary_name = $_FILES['image']['tmp_name'];
$mimetype = $_FILES['image']['type'];
$filesize = $_FILES['image']['size'];
switch($mimetype) {
case "image/jpg":
case "image/jpeg":
$i = imagecreatefromjpeg($temporary_name);
break;
case "image/gif":
$i = imagecreatefromgif($temporary_name);
break;
case "image/png":
$i = imagecreatefrompng($temporary_name);
break;
}
unlink($temporary_name);
$zaman=time();
imagejpeg($i,"answers/cevap$time.jpg",90);
$dest_x = 200;
$dest_y = 200;
if (imagesx($i) > $dest_x or imagesy($i) > $dest_y) {
if (imagesx($i) >= imagesy($i)) {
$thumb_x = $dest_x;
$thumb_y = imagesy($i)*($dest_x/imagesx($i));
} else {
$thumb_x = imagesx($i)*($dest_y/imagesy($i));
$thumb_y = $dest_y;
}
} else {
$thumb_x = imagesx($i);
$thumb_y = imagesy($i);
}
$thumb = imagecreatetruecolor($thumb_x,$thumb_y);
imagecopyresampled($thumb, $i ,0, 0, 0, 0, $thumb_x, $thumb_y, imagesx($i), imagesy($i));
imagejpeg($thumb, "answers/thumb_$time.jpg", 90);
} Resim yükleme ve thumbnail oluşturma kodu
5
●2.794
- 23-01-2015, 20:28:28Kimlik doğrulama veya yönetimden onay bekliyor.Arkadaşlar form ile resmi alıp kaydetmek ve thumbnail oluşturmak istiyorum ama nedense kayıt yapamıyorum. Koddaki hata nerede bakabilir misiniz?
- 24-01-2015, 19:17:41WideImage diye bir sınıf var, php'nin gd extension'unu çok güzel derlemişler.
Upload edilen fotoyu çok kolay bir şekilde Kırpıp küçültüp istediğin yere kaydedebilirsin. Bu şekilde klasik yöntemle yapıp işi çorba yapmak yerine, bir sınıf oluşturursun, resim oluşturma, resim güncelleme ve resim silme gibi fonksiyonlar oluşturursun, hem işi kolaylaştırırsın hem de sınıfı dilediğin yerde kullanırsın.
Aşağıdaki Gibi Bir Formumuz Olsun
<form role="form" enctype="multipart/form-data" method="post"> <input type="file" name="inputName"> </form>
Örnek Basit Bir Sınıf Yazalım.
<?php // WideImage sınıfını çağıralım require_once 'wideimage/WideImage.php'; // Sınıfımızın Adı ImageController olsun class ImageController { /* $inputName // Formda Vereceğin inputun Adı Örnek <input type="file" name="inputName"> $resizeHeight // Küçülteceğin Resmin Yüksekliği $resizeWidth // Küçülteceğin Resmin Genişliği $newImage // oluşturacağın Yeni Resmin Adı, Burada uzantıyı da eklemeyi unutma. Örnek yeni-resim.png */ public function resizeUploadedImage($inputName,$resizeHeight,$resizeWidth,$newImage){ $uploadedImage = WideImage::loadFromUpload($inputName)->resize($resizeWidth, $resizeHeight, 'inside'); $uploadedImage->saveToFile('/kaydedecigin/klasor/yolu/'.$newImage.''); } } // Kullanımı $img = new ImageController(); $img->resizeUploadedImage('inputName',200,150,'yeni-resim.jpg');Kodun Çalışacağının Garantisi Yoktur. Yardımcı Olmak Ve Mantığını Kavramak İçin Yazılmıştır.
(Bknz: GD IMage | WideImage ) - 24-01-2015, 19:49:06Bilgi paylaşınca güzel. Yardımcı olabildiysek ne mutlu (:asimus adlı üyeden alıntı: mesajı görüntüle