• 04-02-2017, 22:42:30
    #1
    Arkadaşlar Resim upload yapıp adının , boyutunun ve ayrı olarak Thumbnail yani küçük resim oluşturuyorum ancak resimlerin url sini veritabanına eklemem gerek ve index php deki açıklama txt yazısını ve resimadresini veri tabanına göndermeliyim.


    Aşağıdaki Kodu Nereye Eklemeliyim.
    $resim    =    $_POST["resim"];
    $aciklama=$_POST["aciklama"];
    
    $sorgu        =    mysql_query("insert into basvur (aciklama,resim) values ('$aciklama','$buyuk','$kucuk')");
                        if ($sorgu){
                            echo '<center><font size="5" style="color:green">'.'Fotoğrafınız Başarıyla Yüklendi.'.'</font></center>';
                            echo '<center><font size="5" style="color:green">'.'Bilgileriniz Veritabanına Kaydedildi.'.'</font></center>';
                        }
    }


    İndex.php
    <form action='upload.php' enctype='multipart/form-data' method='post'>
    <input type='file' name='resim' >
    
    <input type="text" name="aciklama" />
    
    <input class='buton' type='submit' value='Gönder' name='yukle'>
    </form>
    upload.php
    <?php 
    include ("config.php");   
    ?>
    <?php
    
    //fotoyu formdan çektim
    $posted  = "resim";
    
    //fotonun kapladığı boyutuna bak
    $boyut   = $_FILES["resim"]["size"];
    
    //boyut 2 mb dan büyükse uyar
    if($boyut > "2000000"){ //boyut kontrol if başla
    echo "<center><br><img src='imge/unlem.gif'>
    <br><br>Dosya Boyutunuz Sınırı Aşıyor. Max Dosya Boyutu: 2.00 
    (İki) Mb<br><br><a href='javascript:history.back(1);'>«Geri</a>
    </center>";
    }elseif($boyut < "2000000"){  //boyut kontrol elseif başla
    
    //resim 2 mb dan kuçukse işleme başla
    if($_FILES["resim"]['name']){  //resim if başla
    
    $filename=$_FILES["$posted"]['name'];
    $efilename = explode('.', $filename);
    $uzanti = $efilename[count($efilename) - 1];
    $uzantilar=array('jpg','JPG','Jpeg','Jpg',
    'JPEG','gif','GIF','Gif'); 
            
            //uzantı jpeg yada gif değilse uploadı durdur ve uyarı ver
            if(!in_array($uzanti,$uzantilar)){
                echo "<center><br><img src='imge/unlem.gif'><br><br>Geçersiz 
                Fotoğraf Uzantısı. Lütfen Jpeg ve Gif Formatında Fotoğraf Yükleyiniz!<br>
    <br><a href='javascript:history.back(1);'>«Geri</a></center>";
                  exit;
              }   
    
    //uzantı uygunsa yeni isim ver ve upload yap             
    $isim=rand(0,999999999);
    $yeniad = "".$isim.".".$uzanti."";
    move_uploaded_file($_FILES["$posted"]['tmp_name'],"fotolar/buyuk/".$yeniad);
    
    }//resim if bitir
    
    //upload ettiğimiz fotonun yolu
    $fotoyolu  = "fotolar/buyuk/".$yeniad;
    
    //upload ettiğimiz fotunun uzantısını alıyoruz
    $ayir = explode('.',$fotoyolu); 
    $ele  = count($ayir)-1; 
    $uzantisi = $ayir["$ele"];
    
    //Uzantı jpg ise Boyutlama ve yeni isim işlemi yap
    if($uzantisi=="jpeg" || $uzantisi=="jpg" || $uzantisi=="Jpeg" || $uzantisi=="Jpg" || $uzantisi=="JPG" || $uzantisi=="JPEG"){ 
    //uzantisi kontrol if başla
    
    $buyuk_foto = $fotoyolu;
    $percent = 0.5;
    header("Content-type: image/jpeg");
    list($width, $height) = getimagesize($buyuk_foto);
    
    $newwidth = 500;  //büyük foto için istenen genişlik
    $newheight = 375; //büyük foto için istenen yükseklik
    
    $thumb = imagecreatetruecolor($newwidth, $newheight);
    $source = imagecreatefromjpeg($buyuk_foto);
    imagecopyresampled($thumb, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
    $afilename = explode('.', $buyuk_foto);
    $uzan = $afilename[count($afilename) - 1];
    $ad   =rand(0,999999999);
    $yenisi = "".$ad.".".$uzan."";
    
    //veritabanına kayıt edilecek yeni boyutlandırdığımız fotonun yolu
    $buyuk = "fotolar/buyuk/".$yenisi;
    imagejpeg($thumb,$buyuk,100);
    
    //ilk upload ettiğimiz yani boyutlandırmadan önceki fotoyu siliyoruz
    unlink("$buyuk_foto");
    
    #--yüklenen büyük fotoyu kucuk klasörüne fotonun küçük halini oluşturuyoruz
    $yol = $buyuk;
    $ayirr = explode('.',$yol); 
    $suz = count($ayirr) -1; 
    $uzantisii = $ayirr["$suz"];
    
    $buyuk_img = $buyuk;
    $percent = 0.5;
    header("Content-type: image/jpeg");
    list($width, $height) = getimagesize($buyuk_img);
    
    $newwidth = 130;  //küçük foto için istenen genişlik
    $newheight = 97;  //küçük foto için istenen yükseklik
    
    $thumb = imagecreatetruecolor($newwidth, $newheight);
    $source = imagecreatefromjpeg($buyuk_img);
    imagecopyresampled($thumb, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
    $afilename = explode('.', $buyuk_img);
    $uzan = $afilename[count($afilename) - 1];
    $ad   =rand(0,999999999);
    $yenisi = "".$ad.".".$uzan."";
    
    //veritabanına fotonun küçük halinin yolunu kayıt ediyoruz yani ( $kucuk )
    $kucuk = "fotolar/kucuk/".$yenisi;
    imagejpeg($thumb,$kucuk,100);
    #--yüklenen büyük fotoyu kucuk klasörüne fotonun küçük halini oluşturuyoruz
    
    
    }//uzantisi kontrol if bitir
    
    //Uzantı gif ise Boyutlama ve yeni isim işlemi yap
    elseif($uzantisi=="gif" || $uzantisi=="GIF" || $uzantisi=="Gif"){ //uzantisi gif kontrolu elseif başla
    
    $buyuk_foto = $fotoyolu;
    $percent = 0.5;
    header("Content-type: image/jpeg");
    list($width, $height) = getimagesize($buyuk_foto);
    
    $newwidth = 500;  //büyük foto için istenen genişlik
    $newheight = 375; //büyük foto için istenen yükseklik
    
    $thumb = imagecreatetruecolor($newwidth, $newheight);
    $source = imagecreatefromgif($buyuk_foto);
    imagecopyresampled($thumb, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
    $afilename = explode('.', $buyuk_foto);
    $uzan = $afilename[count($afilename) - 1];
    $ad   =rand(0,999999999);
    $yenisi = "".$ad.".".$uzan."";
    
    //veritabanına kayıt edilecek yeni boyutlandırdığımız fotonun yolu
    $buyuk = "fotolar/buyuk/".$yenisi;
    imagegif($thumb,$buyuk,100);
    
    //ilk upload ettiğimiz yani boyutlandırmadan önceki fotoyu siliyoruz
    unlink("$buyuk_foto");
    
    #--yüklenen büyük fotoyu kucuk klasörüne fotonun küçük halini oluşturuyoruz
    $yol = $buyuk;
    $ayirr = explode('.',$yol); 
    $suz = count($ayirr) -1; 
    $uzantisii = $ayirr["$suz"];
    
    $buyuk_img = $buyuk;
    $percent = 0.5;
    header("Content-type: image/jpeg");
    list($width, $height) = getimagesize($buyuk_img);
    
    $newwidth = 130;  //küçük foto için istenen genişlik
    $newheight = 97;  //küçük foto için istenen yükseklik
    
    $thumb = imagecreatetruecolor($newwidth, $newheight);
    $source = imagecreatefromgif($buyuk_img);
    imagecopyresampled($thumb, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
    $afilename = explode('.', $buyuk_img);
    $uzan = $afilename[count($afilename) - 1];
    $ad   =rand(0,999999999);
    $yenisi = "".$ad.".".$uzan."";
    
    //veritabanına fotonun küçük halinin yolunu kayıt ediyoruz yani ( $kucuk )
    $kucuk = "fotolar/kucuk/".$yenisi;
    imagegif($thumb,$kucuk,100);
    #--yüklenen büyük fotoyu kucuk klasörüne fotonun küçük halini oluşturuyoruz
    
    } //uzantisi gif kontrolu elseif başla
    
    
    }//boyut kontrol elseif bitir 
    
    ?>
  • 04-02-2017, 22:59:50
    #2
    Ertenya adlı üyeden alıntı: mesajı görüntüle
    Arkadaşlar Resim upload yapıp adının , boyutunun ve ayrı olarak Thumbnail yani küçük resim oluşturuyorum ancak resimlerin url sini veritabanına eklemem gerek ve index php deki açıklama txt yazısını ve resimadresini veri tabanına göndermeliyim.


    Aşağıdaki Kodu Nereye Eklemeliyim.
    $resim    =    $_POST["resim"];
    $aciklama=$_POST["aciklama"];
    
    $sorgu        =    mysql_query("insert into basvur (aciklama,resim) values ('$aciklama','$buyuk','$kucuk')");
                        if ($sorgu){
                            echo '<center><font size="5" style="color:green">'.'Fotoğrafınız Başarıyla Yüklendi.'.'</font></center>';
                            echo '<center><font size="5" style="color:green">'.'Bilgileriniz Veritabanına Kaydedildi.'.'</font></center>';
                        }
    }


    İndex.php
    <form action='upload.php' enctype='multipart/form-data' method='post'>
    <input type='file' name='resim' >
    
    <input type="text" name="aciklama" />
    
    <input class='buton' type='submit' value='Gönder' name='yukle'>
    </form>
    upload.php
    <?php 
    include ("config.php");   
    ?>
    <?php
    
    //fotoyu formdan çektim
    $posted  = "resim";
    
    //fotonun kapladığı boyutuna bak
    $boyut   = $_FILES["resim"]["size"];
    
    //boyut 2 mb dan büyükse uyar
    if($boyut > "2000000"){ //boyut kontrol if başla
    echo "<center><br><img src='imge/unlem.gif'>
    <br><br>Dosya Boyutunuz Sınırı Aşıyor. Max Dosya Boyutu: 2.00 
    (İki) Mb<br><br><a href='javascript:history.back(1);'>«Geri</a>
    </center>";
    }elseif($boyut < "2000000"){  //boyut kontrol elseif başla
    
    //resim 2 mb dan kuçukse işleme başla
    if($_FILES["resim"]['name']){  //resim if başla
    
    $filename=$_FILES["$posted"]['name'];
    $efilename = explode('.', $filename);
    $uzanti = $efilename[count($efilename) - 1];
    $uzantilar=array('jpg','JPG','Jpeg','Jpg',
    'JPEG','gif','GIF','Gif'); 
            
            //uzantı jpeg yada gif değilse uploadı durdur ve uyarı ver
            if(!in_array($uzanti,$uzantilar)){
                echo "<center><br><img src='imge/unlem.gif'><br><br>Geçersiz 
                Fotoğraf Uzantısı. Lütfen Jpeg ve Gif Formatında Fotoğraf Yükleyiniz!<br>
    <br><a href='javascript:history.back(1);'>«Geri</a></center>";
                  exit;
              }   
    
    //uzantı uygunsa yeni isim ver ve upload yap             
    $isim=rand(0,999999999);
    $yeniad = "".$isim.".".$uzanti."";
    move_uploaded_file($_FILES["$posted"]['tmp_name'],"fotolar/buyuk/".$yeniad);
    
    }//resim if bitir
    
    //upload ettiğimiz fotonun yolu
    $fotoyolu  = "fotolar/buyuk/".$yeniad;
    
    //upload ettiğimiz fotunun uzantısını alıyoruz
    $ayir = explode('.',$fotoyolu); 
    $ele  = count($ayir)-1; 
    $uzantisi = $ayir["$ele"];
    
    //Uzantı jpg ise Boyutlama ve yeni isim işlemi yap
    if($uzantisi=="jpeg" || $uzantisi=="jpg" || $uzantisi=="Jpeg" || $uzantisi=="Jpg" || $uzantisi=="JPG" || $uzantisi=="JPEG"){ 
    //uzantisi kontrol if başla
    
    $buyuk_foto = $fotoyolu;
    $percent = 0.5;
    header("Content-type: image/jpeg");
    list($width, $height) = getimagesize($buyuk_foto);
    
    $newwidth = 500;  //büyük foto için istenen genişlik
    $newheight = 375; //büyük foto için istenen yükseklik
    
    $thumb = imagecreatetruecolor($newwidth, $newheight);
    $source = imagecreatefromjpeg($buyuk_foto);
    imagecopyresampled($thumb, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
    $afilename = explode('.', $buyuk_foto);
    $uzan = $afilename[count($afilename) - 1];
    $ad   =rand(0,999999999);
    $yenisi = "".$ad.".".$uzan."";
    
    //veritabanına kayıt edilecek yeni boyutlandırdığımız fotonun yolu
    $buyuk = "fotolar/buyuk/".$yenisi;
    imagejpeg($thumb,$buyuk,100);
    
    //ilk upload ettiğimiz yani boyutlandırmadan önceki fotoyu siliyoruz
    unlink("$buyuk_foto");
    
    #--yüklenen büyük fotoyu kucuk klasörüne fotonun küçük halini oluşturuyoruz
    $yol = $buyuk;
    $ayirr = explode('.',$yol); 
    $suz = count($ayirr) -1; 
    $uzantisii = $ayirr["$suz"];
    
    $buyuk_img = $buyuk;
    $percent = 0.5;
    header("Content-type: image/jpeg");
    list($width, $height) = getimagesize($buyuk_img);
    
    $newwidth = 130;  //küçük foto için istenen genişlik
    $newheight = 97;  //küçük foto için istenen yükseklik
    
    $thumb = imagecreatetruecolor($newwidth, $newheight);
    $source = imagecreatefromjpeg($buyuk_img);
    imagecopyresampled($thumb, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
    $afilename = explode('.', $buyuk_img);
    $uzan = $afilename[count($afilename) - 1];
    $ad   =rand(0,999999999);
    $yenisi = "".$ad.".".$uzan."";
    
    //veritabanına fotonun küçük halinin yolunu kayıt ediyoruz yani ( $kucuk )
    $kucuk = "fotolar/kucuk/".$yenisi;
    imagejpeg($thumb,$kucuk,100);
    #--yüklenen büyük fotoyu kucuk klasörüne fotonun küçük halini oluşturuyoruz
    
    
    }//uzantisi kontrol if bitir
    
    //Uzantı gif ise Boyutlama ve yeni isim işlemi yap
    elseif($uzantisi=="gif" || $uzantisi=="GIF" || $uzantisi=="Gif"){ //uzantisi gif kontrolu elseif başla
    
    $buyuk_foto = $fotoyolu;
    $percent = 0.5;
    header("Content-type: image/jpeg");
    list($width, $height) = getimagesize($buyuk_foto);
    
    $newwidth = 500;  //büyük foto için istenen genişlik
    $newheight = 375; //büyük foto için istenen yükseklik
    
    $thumb = imagecreatetruecolor($newwidth, $newheight);
    $source = imagecreatefromgif($buyuk_foto);
    imagecopyresampled($thumb, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
    $afilename = explode('.', $buyuk_foto);
    $uzan = $afilename[count($afilename) - 1];
    $ad   =rand(0,999999999);
    $yenisi = "".$ad.".".$uzan."";
    
    //veritabanına kayıt edilecek yeni boyutlandırdığımız fotonun yolu
    $buyuk = "fotolar/buyuk/".$yenisi;
    imagegif($thumb,$buyuk,100);
    
    //ilk upload ettiğimiz yani boyutlandırmadan önceki fotoyu siliyoruz
    unlink("$buyuk_foto");
    
    #--yüklenen büyük fotoyu kucuk klasörüne fotonun küçük halini oluşturuyoruz
    $yol = $buyuk;
    $ayirr = explode('.',$yol); 
    $suz = count($ayirr) -1; 
    $uzantisii = $ayirr["$suz"];
    
    $buyuk_img = $buyuk;
    $percent = 0.5;
    header("Content-type: image/jpeg");
    list($width, $height) = getimagesize($buyuk_img);
    
    $newwidth = 130;  //küçük foto için istenen genişlik
    $newheight = 97;  //küçük foto için istenen yükseklik
    
    $thumb = imagecreatetruecolor($newwidth, $newheight);
    $source = imagecreatefromgif($buyuk_img);
    imagecopyresampled($thumb, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
    $afilename = explode('.', $buyuk_img);
    $uzan = $afilename[count($afilename) - 1];
    $ad   =rand(0,999999999);
    $yenisi = "".$ad.".".$uzan."";
    
    //veritabanına fotonun küçük halinin yolunu kayıt ediyoruz yani ( $kucuk )
    $kucuk = "fotolar/kucuk/".$yenisi;
    imagegif($thumb,$kucuk,100);
    #--yüklenen büyük fotoyu kucuk klasörüne fotonun küçük halini oluşturuyoruz
    
    } //uzantisi gif kontrolu elseif başla
    
    
    }//boyut kontrol elseif bitir 
    
    ?>
    upload.php dosyanızda $yeniad demişsiniz bir yerde ve dosyayı ilgili klasöre taşımızsınız. İşte bu $yeniad değişkenini kullanarak veritabanına o noktada ekleyebilirsiniz.

    Her ne kadar klasik php yükleme metodunu kullanmış olsanız da Verot sınıfını kullanmanızı tavsiye ederim.
  • 05-02-2017, 11:21:26
    #3
    emerald adlı üyeden alıntı: mesajı görüntüle
    upload.php dosyanızda $yeniad demişsiniz bir yerde ve dosyayı ilgili klasöre taşımızsınız. İşte bu $yeniad değişkenini kullanarak veritabanına o noktada ekleyebilirsiniz.

    Her ne kadar klasik php yükleme metodunu kullanmış olsanız da Verot sınıfını kullanmanızı tavsiye ederim.
    Benim İstediğim resimin Büyük ve Küçük halinin url sini veri tabanına çekmek istiyorum. Birde Bununla birlikte aşağıdaki txt yazısınıda çekmekistiyorum.

    Upload.php dosyamda bu veritabanına göndermesi için kodu tam olarak nereye koymalıyım. yardımcı olurmusunuz.

    <input type="text" name="aciklama" />
    $resim    =    $_POST["resim"];
    $aciklama=$_POST["aciklama"];
    
    $sorgu        =    mysql_query("insert into basvur (aciklama,resim) values ('$aciklama','$yeniad','$yenisi')");
                        if ($sorgu){
                            echo '<center><font size="5" style="color:green">'.'Fotoğrafınız Başarıyla Yüklendi.'.'</font></center>';
                            echo '<center><font size="5" style="color:green">'.'Bilgileriniz Veritabanına Kaydedildi.'.'</font></center>';
                        }
    }
  • 05-02-2017, 16:00:09
    #4
    Ertenya adlı üyeden alıntı: mesajı görüntüle
    Benim İstediğim resimin Büyük ve Küçük halinin url sini veri tabanına çekmek istiyorum. Birde Bununla birlikte aşağıdaki txt yazısınıda çekmekistiyorum.

    Upload.php dosyamda bu veritabanına göndermesi için kodu tam olarak nereye koymalıyım. yardımcı olurmusunuz.

    <input type="text" name="aciklama" />
    $resim    =    $_POST["resim"];
    $aciklama=$_POST["aciklama"];
    
    $sorgu        =    mysql_query("insert into basvur (aciklama,resim) values ('$aciklama','$yeniad','$yenisi')");
                        if ($sorgu){
                            echo '<center><font size="5" style="color:green">'.'Fotoğrafınız Başarıyla Yüklendi.'.'</font></center>';
                            echo '<center><font size="5" style="color:green">'.'Bilgileriniz Veritabanına Kaydedildi.'.'</font></center>';
                        }
    }
    1- mysql_query kodunuzdaki alan sayısı ile değer sayısı birbiri ile eşit değil. basvur isimli tablonuzda aciklama ve resim isimli alanlar var ancak siz 3 tane değer kaydetmeye çalışmışsınız dolayısıyla hata alacaksınız.

    2- Veritabanında ekstrem bir durum olmadıktan sonra resmin hem büyük hem küçük ismi kaydedilmez.

    Diyelim ki resim isminde bir klasör olur onun altında iki klasör eklersiniz. Büyük resimler için 'b' küçük resimler için 'k' ismini verirsiniz ve bu klasörlere yüklersiniz. Dosya isimleri aynı olur farklı olmaz. Büyük resim göstermek istediğinizde veritabanından resim adını seçersiniz <img src="resim/b/{$resimadi}" > gibi kullanırsınız. Küçük resime ihtiyacınız olduğunda ise resim/k/ şeklinde kullanırsınız. Dosya url sini veritabanınıza kaydetmemelisiniz. Sadece dosyanın adını ve uzantısını saklamalısınız.