• 26-08-2017, 15:40:23
    #1
    Merhaba arkadaşlar,

    jQuery ajax yardımlarıyla modal içerisinde güncelleme işlemleri yapıyorum.
    Normalde $_POST işlemini görürken $_FILES 'i boş getiriyor.

    <label>Resim</label>
    <input type="file" class="form-control" name="dosya">
    if ($_FILES['dosya']) {
                $hata2 = $_FILES['dosya']['error'];
                if ($hata2 != 0) {
                } else {
                    $boyut2 = $_FILES['dosya']['size'];
                    if ($boyut2 > (1024 * 1024 * 3)) {
                        alert('Dosya 3MB den büyük olamaz.');
                    } else {
                        $isim2 = $_FILES['dosya']['name'];
                        $uzanti2 = explode('.', $isim2);
                        $uzanti2 = $uzanti2[count($uzanti2) - 1];
                        if ($uzanti2 == 'jpg' or $uzanti2 == 'jpeg' or $uzanti2 == 'png' or $uzanti2 == 'svg' or $uzanti2 == 'JPG' or $uzanti2 == 'JPEG' or $uzanti2 == 'PNG' or $uzanti2 == 'SVG') {
                            $dosya2 = $_FILES['dosya']['tmp_name'];
                            $resim2 = $ana_link."images/".strtotime(date("d.m.Y H:i")).$_FILES['dosya']['name'];
                            copy($dosya2, 'images/'.strtotime(date("d.m.Y H:i")).$_FILES['dosya']['name']);
                        } else {
                            alert("Sadece jpg,png,svg uzantılı dosyalar yüklenbilir. Lütfen dosya uzantınızı kontrol ediniz.");
                        }
                    }
                }
            }
    Yukarıdaki kodlarla normal bir sayfada kayıt işlemini gerçekleştirebiliyorum. Fakat modal içerisinde, jquery işin içine girdiğinde alert($_POST['dosya']); ile yüklemek istediğim dosya adını alırken alert($_FILES['dosya']); içerisine hatta var_dump($_FILES); dahi içerisine girmiyor.

    jQuery('#soruarsivPost').submit(function () {
                var id = $(".soru_id_ver").data("id");
                var data = $(".form-control");
    
                $.ajax({
                    type:'POST',
                    url:ana_link+'islemler.php?islem=guncelle_form4&id='+id,
                    data:data,
                    success:function(cevap){
                        $(".modal-body").html(cevap);
                    }
                });
            });
    Yani anlayacağınız, input içerisindeki dosyayı $_FILES 'te alabilirsem geri kalanını halledebileceğim. Nasıl yol izlemeliyim?
  • 26-08-2017, 16:07:15
    #2
    Üyeliği durduruldu
    Merhabalar,

    Form etiketine,
    enctype="multipart/form-data"
    eklemeniz gerekiyor.

    -----

    Form verilerini bu şekilde iletmeyin, ya serialize ederek yollayın ya da Formdata ile çevirin.

    var data = new FormData($(".form-control"));

    bu şekilde kullanırsanız problem kalmayacaktır.
  • 26-08-2017, 16:21:09
    #3
    mertotrk adlı üyeden alıntı: mesajı görüntüle
    Merhabalar,

    Form etiketine,
    enctype="multipart/form-data"
    eklemeniz gerekiyor.

    -----

    Form verilerini bu şekilde iletmeyin, ya serialize ederek yollayın ya da Formdata ile çevirin.

    var data = new FormData($(".form-control"));

    bu şekilde kullanırsanız problem kalmayacaktır.
    Merhaba, form etkiketimde mevcut ve formData olarak güncellediğimde de malesef sonuç elde edemedim.
    jQuery('#soruarsivPost').submit(function () {
                var id = $(".soru_id_ver").data("id");
                var data = new FormData($(".form-control"));
    
                $.ajax({
                    type:'POST',
                    url:ana_link+'islemler.php?islem=guncelle_form4&id='+id,
                    data:data,
                    success:function(cevap){
                        $(".modal-body").html(cevap);
                    }
                });
            });
  • 26-08-2017, 16:32:47
    #4
    Üyeliği durduruldu
    melihozyurt adlı üyeden alıntı: mesajı görüntüle
    Merhaba, form etkiketimde mevcut ve formData olarak güncellediğimde de malesef sonuç elde edemedim.
    jQuery('#soruarsivPost').submit(function () {
                var id = $(".soru_id_ver").data("id");
                var data = new FormData($(".form-control"));
    
                $.ajax({
                    type:'POST',
                    url:ana_link+'islemler.php?islem=guncelle_form4&id='+id,
                    data:data,
                    success:function(cevap){
                        $(".modal-body").html(cevap);
                    }
                });
            });
    Merhabalar,

    Başka domaine mi post ediyorsunuz ? "analink+" siler misiniz, http olmadan bi' deneyin. POST direkt islemler.phpye gitsin.
  • 26-08-2017, 16:41:15
    #5
    mertotrk adlı üyeden alıntı: mesajı görüntüle
    Merhabalar,

    Başka domaine mi post ediyorsunuz ? "analink+" siler misiniz, http olmadan bi' deneyin. POST direkt islemler.phpye gitsin.
    Tekrar Merhaba,

    Hayır kendi alan adıma post ediyorum. Silip denediğimde de sonuç değişmedi.
    Form içerisindeki post işlemlerini yapabiliyorum fakat $_FILES['dosya'] olarak alamıyorum resmi. $_POST['dosya'] dediğimde geliyor. $_FILES 'in jQuery tarafında mı sorunu var tam çözemedim
  • 26-08-2017, 16:55:25
    #6
    Üyeliği durduruldu
    melihozyurt adlı üyeden alıntı: mesajı görüntüle
    Tekrar Merhaba,

    Hayır kendi alan adıma post ediyorum. Silip denediğimde de sonuç değişmedi.
    Form içerisindeki post işlemlerini yapabiliyorum fakat $_FILES['dosya'] olarak alamıyorum resmi. $_POST['dosya'] dediğimde geliyor. $_FILES 'in jQuery tarafında mı sorunu var tam çözemedim
    Normal de bu haliyle çalışması gerekiyor, gözümden kaçan bir yer yok ise. Hostinginizi kontrol ettiniz mi ?

    Komple jqueryi aradan çıkartıp, normal submit butonu atıp dener misiniz ? php tarafında sadece var_dump yapın $_filesi. Bakalım o şekilde çalışıyor mu.
  • 26-08-2017, 17:53:23
    #7
    mertotrk adlı üyeden alıntı: mesajı görüntüle
    Normal de bu haliyle çalışması gerekiyor, gözümden kaçan bir yer yok ise. Hostinginizi kontrol ettiniz mi ?

    Komple jqueryi aradan çıkartıp, normal submit butonu atıp dener misiniz ? php tarafında sadece var_dump yapın $_filesi. Bakalım o şekilde çalışıyor mu.
    Normalde jquery'siz çalışıyor bir sorun yok ama jquery işin içine girince veri alamıyorum. İsterseniz team viewer uzerınden gosterebılırım.

    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 17:53:23 -->-> Daha önceki mesaj 16:59:52 --

    Çok teşekkür ederim, elinize sağlık