• 14-03-2024, 14:25:30
    #1
    Basitçe bir ürün ekleme sayfası yapıyorum ve ürün resmini jpg png olarak yüklerken sorun yok ama jpeg, jiff veya webp yüklersem örneğin dosya ürünresmi.jpeg ise klasöre ürünresmijpeg olarak yükleniyor ama resim <img src=ürünresmijpeg> ile çağırdığımda sorunsuz gözüküyor bunun sebebi nedir?


    urunekle.php dosyam
    <center>
        <h2>Ürün Ekleme</h2>
        <form action="dosyaupload.php" method="post"  enctype="multipart/form-data">
    
    
            Ürün Adı: <br>  
            <input required type=text name="ad" maxlength=255>
            <br>
    
            Ürün Açıklaması: <br>
            <input required type=text name="aciklama" maxlength=255>
            <br>
    
            Ürün Resmi: <br>
            <input required type="file" name="dosya" accept="application/pdf, application/vnd.ms-excel, image/*"  required><br>
            <input type="hidden" name="dosyaaciklama" value="dekont">
            <br>        
    
            Ürün Fiyatı: <br>
            <input required type="number" step="0.01" name="fiyat" maxlength=255>
            <br><br>
    
            <input type=submit value=Ekle>
        </form>
    dosyaupload.php dosyam
    <?php
            if ($_POST) {
                include 'baglan.php';
                if ($_FILES["dosya"]["size"]<4096*4096){//Dosya boyutu  aldık ve 1Mb'tan az olmasını söyledik.
    
    
                $aciklama    =     $_POST["dosyaaciklama"];  //Post ile gelen resimaciklamayı aciklama değişkenine atadık.
                $dosya_adi   =    $_FILES["dosya"]["name"];  //Dsoya adını aldık.
    
                //Resimi kayıt ederken yeni bir isim oluşturalım
                $uret=array("cv","fg","th","lu","er");
                $uzanti=substr($dosya_adi,-4,4);
                $sayi_tut=rand(1,10000);
    
                $yuklenecek_dosya="urunresimleri/".$uret[rand(0,4)].$sayi_tut.$uzanti;
    
    
                echo '<pre>';
                if (move_uploaded_file($_FILES['dosya']['tmp_name'], $yuklenecek_dosya))
                {
                    $ad =  $_POST['ad'];
                      $aciklama =  $_POST['aciklama'];
                       $fiyat =  $_POST['fiyat'];
                           // Veri ekleme sorgumuzu yazıyoruz.
                       if ($baglanti->query("INSERT INTO urunler (urun_adi , urun_aciklama, urun_resmi, urun_fiyati) VALUES ('$ad','$aciklama','$yuklenecek_dosya','$fiyat')")) {
                          echo "Veri Eklendi"; // Eğer veri eklendiyse eklendi yazmasını sağlıyoruz.
                       }
                       else{
                          echo "Hata oluştu";
                       }
                }
                else {
                    echo "Olası dosya yükleme saldırısı!\n";
                }
    
            }
        }
        ?>
  • 14-03-2024, 14:41:10
    #2
    dosyaupload.php dosyasının 12. satırındaki $uzanti değişkenini aşağıdaki ile değiştirip dener misiniz?
    $uzanti = '.'.@end(explode('.',$dosya_adi));
  • 14-03-2024, 14:45:09
    #3
    ahmtcn37 adlı üyeden alıntı: mesajı görüntüle
    dosyaupload.php dosyasının 12. satırındaki $uzanti değişkenini aşağıdaki ile değiştirip dener misiniz?
    $uzanti = '.'.end(explode('.',$dosya_adi);
    Parse error: syntax error, unexpected token ";", expecting ")" in D:xampphtdocsdosyaupload.php on line 12
    bu hatayı aldım hocam
  • 14-03-2024, 14:46:22
    #4
    Sevindik adlı üyeden alıntı: mesajı görüntüle
    Parse error: syntax error, unexpected token ";", expecting ")" in D:xampphtdocsdosyaupload.php on line 12
    bu hatayı aldım hocam
    ; den önce bir parantez kapatır mısın onu unutmuşum
  • 14-03-2024, 14:48:17
    #5
    ahmtcn37 adlı üyeden alıntı: mesajı görüntüle
    ; den önce bir parantez kapatır mısın onu unutmuşum
    Sağ olun hocam işe yaradı ama bu sefer Notice: Only variables should be passed by reference in D:xampphtdocsdosyaupload.php on line 12 böyle bir hata aldım bi sorun teşkil eder mi burası
  • 14-03-2024, 14:49:40
    #6
    Sevindik adlı üyeden alıntı: mesajı görüntüle
    Sağ olun hocam işe yaradı ama bu sefer Notice: Only variables should be passed by reference in D:xampphtdocsdosyaupload.php on line 12 böyle bir hata aldım bi sorun teşkil eder mi burası
    Uyarı veriyor end kısmınına başına @ işareti koyarsanız uyarıyı görmezsiniz. @end bu şekil
  • 14-03-2024, 14:50:50
    #7
    ahmtcn37 adlı üyeden alıntı: mesajı görüntüle
    Uyarı veriyor end kısmınına başına @ işareti koyarsanız uyarıyı görmezsiniz. @end bu şekil
    Çok teşekkür ederim hocam işe yaradı