v2.5.2
Giriş yap

Ajax ve php hakkında

ozermert26
500 defa görüntülendi

Merhaba arkadaşlar. Ajax'ı kullanmak istiyorum ama formlarım hep aynı dosya içinde. Yani formun action niteliğini kullanarak başka sayfaya göndermek yerine form ile formu işleyen php kodlarımı hep aynı sayfada kullandım. Ben bu düzeni sonraki formlar için değiştirsem bile mevcut formlar için aynı düzeni sağlamam zaman alacak. Bu süreçte ajax'ı insanların hep başka php dosyalarına url belirterek kullandıklarını gördüm. Ben aynı sayfada işlem yaptırmaya çalışıyorum. Ajax'ı bu durumda nasıl kullanabilirim? Yardımlarınız için şimdiden teşekkürlerimi etmek isterim. Sevgiler...

Cevap yaz
Cevaplar (6)
venloress
1042 gün önce

@burra, gelen form değeri kontrol edilir. Yani demek istediğim ekstra birşey eklemeye gerek yok.
Gelen csrf saldırılarına karşı da csrfToken kullanılır.

burra
1042 gün önce

@venlores sayfaya gelen her postta işlem yapıp yanıt döndürmesi hoş bir durum değil diye düşünüyorum.

venloress
1042 gün önce

@burra, işlem no ya gerek yok. Zaten ajax post olarak gönderiyor verileri. Bu yüzden sadece post olup olmadığını kontrol etmesi yeterli.

ozermert26
1042 gün önce

Merhaba, aynı sayfaya yönlendirmek aklıma gelmişti fakat emin Olamamıştım. Cevap yazan herkese çok teşekkürler

burra
1042 gün önce

Ajax isteğini gönderirken, ajax isteği atıldığını belirten özel bir veri gönderin. Mesela islemNo : 1 gibi.
Phpde de bunun kontrolünü yapıp ajax isteği geldiyse işleyip yanıt döndürün.

if(isset($_POST['islemNo']) {
    echo "ajax yanıtı";
    die();
}
venloress
1042 gün önce

Aynı sayfa için ajax kullanabilirsin. Ajax ile aynı sayfaya yönlendireceksin ve php kodlarını aynı sayfa içerisine yazacaksın.

if ($_POST):
    // ajax ile form dan veri gelirse işleme devam et
    // artık bu bölümde işlemlerin yer alacak
endif;

Ajax kısmında form ile aynı sayfaya yönlendir sayfanı, daha sonra üsteki kod yapısını ekle.
İlla farklı sayfa olmasına gerek yok. Mantık yine aynı.