PDO ILE RESIM YÜKLEME İŞLEMI PDO ILE RESIM YÜKLEME İŞLEMI

Gönderen: Kaan   Tarih: 2018-08-03 16:00 Kategori: Php-Html5-Css-jQuery-Mysql | Okundu: 926

Resim yükleme işlemi yapılırken dikkat edilmesi gereken kurallardan bazıları şunlardır.

  • Resim boyutunun maximum değerini belirlemek
  • Hangi resim uzantılarının kabul edileceğini belirlemek
  • Ve resimimizin yeni ismini rasgele bir değer atayarak veritabanımıza kayıt etmek(Güvenlik için)

Evet bunları dikkate aldıktan sonra bir upload formu oluşturalım

<form action="img.php" method="post" name="form1" enctype="multipart/form-data">
<input type="file" name="resim"/><br/>
<input type="text" name="aciklama"/><br/>
<input type="submit" name="gonder" value="Kaydet"/>
</form>

Formda dikkatinizi çekmesi gereken kısım input type="file" yani dosya yükleme inputu ve enctype kısmıdır. Enctype kısmı formumuzda bulunmaz ise dosya taşıma işlemi gerçekleşmez.

Şimdi bu formumuzu oluşturduk peki butona basıldıgında post ettiği sayfayı yani img.php yi nasıl kodlayacağız onada bakalım..

if($_POST){
    if ($_FILES["resim"]["size"]<1024*1024){//Dosya boyutu 1Mb tan az olsun
        if ($_FILES["resim"]["type"]=="image/jpeg"){  //dosya tipi jpeg olsun
            $aciklama    =     $_POST["aciklama"];
            $dosya_adi   =    $_FILES["resim"]["name"];

            //Resimi kayıt ederken yeni bir isim oluşturalım
            $uret=array("as","rt","ty","yu","fg");
            $uzanti=substr($dosya_adi,-4,4);
            $sayi_tut=rand(1,10000);
            $yeni_ad="uploadklasoru/".$uret[rand(0,4)].$sayi_tut.$uzanti;
 
            //Dosya yeni adıyla uploadklasorune kaydedilecek
            if (move_uploaded_file($_FILES["resim"]["tmp_name"],$yeni_ad)){
                echo 'Dosya başarıyla yüklendi.';
 
                //Bilgileri veritabanına kayıt ediyoruz..
$sorgu = $db->prepare("INSERT INTO resimler SET resim=:resim,aciklama=:aciklama");
            $sorgu->execute(array(':resim'=> $yeni_ad,':aciklama'=>$aciklama));
            if ($sorgu){
                echo 'Veritabanına kaydedildi.';
            }else{
                echo 'Kayıt sırasında hata oluştu!';
            }
        }else{
            echo 'Dosya Yüklenemedi!';
        }
    }else{
        echo 'Dosya yalnızca jpeg formatında olabilir!';
    }
    }else{          
        echo 'Dosya boyutu 1 Mb ı geçemez!';
    }
}

Yüklediğimiz resimleri nasıl çekeriz dersenizde onuda şöyle yaparsınız.

<?php 
$resimler = $db->prepare("SELECT * FROM resimler");
$resimler->execute();
if($resimler->rowCount()){
    foreach($resimler as $row){
        ?>
         <img src="<?php echo $row["resim_sutunu_ismi"];?>" alt="Resim" />
        <?php 
    }
}else{
echo "Resim bulunamadı";
}
?>

işlem bu kadar.



Yorumlar: (0)

Henüz yorum yapılmamıştır.

Yorum:

CAPTCHA

Reklamlar

FACEBOOK'DA TAKİP ET

BUNLAR İLGİNİZİ ÇEKEBİLİR

Reklam