Resmin boyutunu küçültüpte kaydetmek istiyorum nasıl yapabilirim?

tamer_27 Tamer Demir

Resmin boyutunu küçültüpte kaydetmek istiyorum nasıl yapabilirim? Kodların birazı aşağıda. Toplam 4 resim ekleyebilecek üye olan. Ama serverdaki otores klasörüne yollarken 600 450 boyutunda yollasın istiyorum. Adam 5 MP kamerayla fotoğraf çekmiş oda bi tanesi 4 5 MB boyutunda yollamak istiyor. Zaten alanım 50 MB bunu nasıl küçültüpte yollatırım servera.Şu an koddanda anlayacağınız gibi sadece 600 KB resme izin veriyo. Yaptım kodlar. Önlemimi bu şekilde aldım ama bu biraz ilkel bi yöntem. Bunu nasıl istedim şekilde düzenlerim. Yani 600 X 450 piksel olarak kaydetsin sistem baya baktım ama bulamadım istedim şekli.

 

  if ($_SESSION["uyead"])
  { 
  $kullanici=$_SESSION["uyead"];
  $id=$_GET["id"];
  $f1=$_FILES["file1"];
  $f2=$_FILES["file2"];
  $f3=$_FILES["file3"];
  $f4=$_FILES["file4"];
  $f1t=$_FILES["file1"]["type"];
  $f2t=$_FILES["file2"]["type"];
  $f3t=$_FILES["file3"]["type"];
  $f4t=$_FILES["file4"]["type"];
  if(($f1!="" and $f1t=="image/pjpeg") or ($f2!="" and $f2t=="image/pjpeg") or ($f3!="" and $f3t=="image/pjpeg") or ($f4!="" and $f4t=="image/pjpeg"))
  {
   if($id!="" && is_numeric($id))
   {
   $sor=mysql_query("select resimdurum from otoilan where id='$id' and ilanveren='$kullanici'");
    if(mysql_num_rows($sor)>0)
    {
     $klasor_adi="otores/".$id;
      if(file_exists($klasor_adi)) 
      {
      $kaynak= $_FILES["file1"]["tmp_name"];
      $resim=$_FILES["file1"]["name"];
      $tipi=$_FILES["file1"]["type"];
      $rboyut=$_FILES["file1"]["size"];
      $ruzanti=substr($resim, -4);
      $yeniad=substr(uniqid(md5(rand())),0,10);
      $yeniresim=$yeniad.$ruzanti;
      if ($kaynak=="")
       {
       echo "<br><br><b><font color=#ff0000>Hata :</font> 1. Resimi seçmediniz. Yüklenemedi</b><br><br>";
       }
       else if($rboyut>600000)
       {
       echo "<br><br><b><font color=#ff0000>Hata :</font> 1. resmin Gönderilemedi. Resmin boyutu en fazla 600 KB dan fazla olmamalıdır</b><br><br>"; 
       }
       else if($tipi!="image/pjpeg" && $tipi!="image/gif" && $tipi!="image/x-png")
       {
       echo "<br><br><b><font color=#ff0000>Hata :</font> 1. Göndermek istediğiniz resim dosyası değildi. Yollanamadı.</b><br><br>"; 
       }
       else
       {
        if(@move_uploaded_file($kaynak,$klasor_adi.'/'.$yeniresim))
        {
         echo "<br><br><b>OLUMLU :</b> 1. Resim başarıyla yüklendi.<br><br>";
        }
        else
        {
        echo "<br><br><b>OLUMSUZ :</b> 1. Resim Yüklenemedi.<br><br>";
        }
       }

 

Yardım ederseniz sevinirim yoksa işimden olacam. :(

10-10-2010 23:40

    Php

    herhangi bir döngü göremedim. bu durumda sadece birinci resim kaydedilir.

    $kaynak= $_FILES["file1"]["tmp_name"];

    bir döngü ile dört resmi de kaydetmek lazım.

    küçültme için gerekli kodlar sitemizde var. (zaten onun altına da aynı soruyu yazmışsınız)

    Her programcı birgün Php yi tadacaktır
    11-10-2010 02:50

      Php

      tamer_27 Tamer Demir

      Sadece biri üzerinden örnek vermek istedim bi tanesini çözersem diğerlerinide ben oluşturup burdada yayınlayabilirim. Baya hazır kod var ama istediğim şekilde değil. Orjinalinide kaydediyo küçültülmüş halinide. Ben sadece file nesnesinden  seçilen resmi küçültüp küçültülmüş halini servera yollamak istiyorum. Bunu yapamadım. Belki hazır kodların arasında vardı ama yaptığım kodlara adapte edemedim.

      12-10-2010 01:38 Edit:12-10-2010 22:47

        Php

        tamer_27 Tamer Demir

        O cevapa baksana resmi nasıl küçültüyor drekon. Önce servera alıyor sonra küçültülmüş halini başka bir klasöre ekliyor. Benim istediğim sadece küçültülmüşünü servera yollamak. Hem orjinal halini hemde küçültülmüş halini değil. o kodlarda önce orjinalini servera çekiyor. Server a çektiiği orjinal büyük resmi küçültüp gene serverdaki başka bir klasöre kopyalıyor. O kodlar hiçbir şekilde işimi görmüyor. Ben servera çekmeden Client te küçültüp servera göndermek istiyorum. Yani ziyaretçinin bilgisayarında küçültüp servera yollamak resmi

        15-10-2010 20:25

          Php

          kullanıcı tarafında küçültebilen birşeyi şu ana kadar hiç görmedim. mümkün olduğunu da zannetmiyorum çünkü internet tarayıcılar böyle bir işleme izin vermez. hatta dosyanın kaç Mb olduğunu bile kullanıcı tarafından öğrenemezsin.

          üzgünüm. güvenlik sebebi ile bu böyle. (şimdilik)

           

          Her programcı birgün Php yi tadacaktır
          16-10-2010 08:14

            Php

            tamer_27 Tamer Demir

            Anladını zannetmiyorum drekon. Peki sadece küçültülmüş boyutunu servera göndermek istesek resimin. Yani forumdaki kodda 2 halinide gönderiyo resmin. Bi orjinal resmini bide küçültülmüş resmini

            17-10-2010 12:30

              Php

              gayet iyi anladım. fakat sen inanmak istemiyorsun 

              iki seçeneğin var:

              1- Resmi sunucuya gönder. orada php ile istediğin boyda, istediğin kadar kopya al

              2- Resmi photoshop ile küçült. sunucuya gönder.

              Her programcı birgün Php yi tadacaktır
              19-10-2010 09:17

                Php

                nssasmaz Nursin Şaşmaz Avatar

                Sunucya dosya göndermeden o dosya hakkında bilgi alamazsın. Amacını öğrenebilirsek aslında dahada yardımcı olabiliriz.

                Eğer amacın sunucuda büyük resmi kaydetmemek ise resmi küçülttükten sonra sunucudan büyük resmi silebilirsin.

                yada JQuery nin ImageCrop plugini mevcut bunu kullanarak çok seçenekli bir küçültme arayüzün olmuş olur ve büyük resimi yine sunucda tutmamış olursun.

                Fakat DREKON'unda dediği gibi;

                kullanıcı tarafında küçültebilen birşeyi şu ana kadar hiç görmedim. mümkün olduğunu da zannetmiyorum çünkü internet tarayıcılar böyle bir işleme izin vermez. hatta dosyanın kaç Mb olduğunu bile kullanıcı tarafından öğrenemezsin.

                üzgünüm. güvenlik sebebi ile bu böyle. (şimdilik)
                Gitme vakti gelince gitmek mi zordur kalmak mı?
                21-10-2010 12:52

                  www.Phpkodlari.com © 2009 Herkes Php öğrenecek
                  Web tasarım ve eğitim kaynağınız.