• 25-06-2020, 15:13:41
    #1
    Merhaba arkadaşlar.
    Garip bir konu ile karşınızdayım
    Php ile en basitinden dosya yükleme kodunu en az 10 farklı siteden aldım.
    Fakat her defasında en basit kodlar bile hata veriyor.
    Benim istediğim şu.
    Sadece dosya yükleyebileceğim (her türlü uzantı) boyut engeline takılmayacak, php dosyası ile aynı dizine yükleyecek bir php kodu istiyorum.
    Elinizde mevcutsa paylaşabilir misiniz?
    Teşekkürler.
  • 25-06-2020, 15:32:54
    #2
    Yüklenecek dosya boyutu izin verilen boyut , php tarafından ziyade sunucu ayarları ile de alakalı bir durum , hangi kod ne hatası veriyor paylaşırsan daha kolay yardımcı olunur.
  • 25-06-2020, 16:56:22
    #3
    FaTe adlı üyeden alıntı: mesajı görüntüle
    Yüklenecek dosya boyutu izin verilen boyut , php tarafından ziyade sunucu ayarları ile de alakalı bir durum , hangi kod ne hatası veriyor paylaşırsan daha kolay yardımcı olunur.
    Cevabınız için teşekkür ederim.
    En basiti aşağıdaki kodu kullandığım zaman "File Not Found" uyarısı veriyor. Halbuki kodlarda bu geçmiyor.

    <html>
    <body>
       <form name="yukleme" method="post" action="index.php" enctype="multipart/form-data">
          <table border="0">
             <tr>
                <td>Dosya Seçiniz:</td>
                <td><input type="file" name="dosya"></td>
             </tr>
             <tr>
                <td>&nbsp;</td>
                <td><input type="submit" name="yukle" value="Yükle"></td>
             </tr>
          </table>
       </form>
     
    <?php
    function turkce($metin){
       $aranan=array("ç","Ç","ğ","Ğ","ı","İ","ö","Ö","ş","Ş","ü","Ü"," ");
       $yerine=array("c","c","g","g","i","i","o","o","s","s","u","u","_");
       return str_replace($aranan,$yerine,$metin);
    }
     
    if($_POST){
       $gecici_ad=$_FILES["dosya"]["tmp_name"];
       $kalici_yol_ad="dosyalar/".turkce($_FILES["dosya"]["name"]);
     
       if ($_FILES["dosya"]["error"]) // hata oluştu ise
          echo "<font color='green'>Hata : ",$_FILES["dosya"]["error"],"</font>";
       else{
          if (file_exists($kalici_yol_ad)) // yüklenen dosya upload dizininde varsa
             echo "<font color='red'>Yazdığınız ad ile bir dosya zaten kayıtlıdır.</font>";
          else{
             if (move_uploaded_file($gecici_ad,$kalici_yol_ad)) // eğer dosya kaydedilirse
                echo "<font color='green'>Dosya başarı ile yüklendi.</font>";
             else
                 echo "<font color='red'>Dosya yükleme başarısız.</font>";
          }
       }
    }
    ?>
    </body>
    </html>
  • 25-06-2020, 17:11:54
    #4
    gizemsiz adlı üyeden alıntı: mesajı görüntüle
    Cevabınız için teşekkür ederim.
    En basiti aşağıdaki kodu kullandığım zaman "File Not Found" uyarısı veriyor. Halbuki kodlarda bu geçmiyor.

    <html>
    <body>
       <form name="yukleme" method="post" action="index.php" enctype="multipart/form-data">
          <table border="0">
             <tr>
                <td>Dosya Seçiniz:</td>
                <td><input type="file" name="dosya"></td>
             </tr>
             <tr>
                <td>&nbsp;</td>
                <td><input type="submit" name="yukle" value="Yükle"></td>
             </tr>
          </table>
       </form>
     
    <?php
    function turkce($metin){
       $aranan=array("ç","Ç","ğ","Ğ","ı","İ","ö","Ö","ş","Ş","ü","Ü"," ");
       $yerine=array("c","c","g","g","i","i","o","o","s","s","u","u","_");
       return str_replace($aranan,$yerine,$metin);
    }
     
    if($_POST){
       $gecici_ad=$_FILES["dosya"]["tmp_name"];
       $kalici_yol_ad="dosyalar/".turkce($_FILES["dosya"]["name"]);
     
       if ($_FILES["dosya"]["error"]) // hata oluştu ise
          echo "<font color='green'>Hata : ",$_FILES["dosya"]["error"],"</font>";
       else{
          if (file_exists($kalici_yol_ad)) // yüklenen dosya upload dizininde varsa
             echo "<font color='red'>Yazdığınız ad ile bir dosya zaten kayıtlıdır.</font>";
          else{
             if (move_uploaded_file($gecici_ad,$kalici_yol_ad)) // eğer dosya kaydedilirse
                echo "<font color='green'>Dosya başarı ile yüklendi.</font>";
             else
                 echo "<font color='red'>Dosya yükleme başarısız.</font>";
          }
       }
    }
    ?>
    </body>
    </html>
    if($_POST) yerine if ($_FILES) yazıp dener misin? Muhtemelen dosyayı bulamıyor.
  • 25-06-2020, 17:27:57
    #5
    YazilimciBiri adlı üyeden alıntı: mesajı görüntüle
    if($_POST) yerine if ($_FILES) yazıp dener misin? Muhtemelen dosyayı bulamıyor.
    Cevabınız için teşekkür ederim.
    Diğer denediğim kodlarda da png resmi upload etti fakat rar dosyasını etmedi.
    Halbuki kodlarda herhangi bir kısıtlama yoktu.
    bu konu hakkında düşünceniz nedir?
  • 25-06-2020, 17:34:45
    #6
    gizemsiz adlı üyeden alıntı: mesajı görüntüle
    Cevabınız için teşekkür ederim.
    Diğer denediğim kodlarda da png resmi upload etti fakat rar dosyasını etmedi.
    Halbuki kodlarda herhangi bir kısıtlama yoktu.
    bu konu hakkında düşünceniz nedir?
    Dosyanın başına,
        header('Content-Type: application/octet-stream');
    şu PHP kodunu ekleyip dener misin?