v2.5.2
Giriş yap

ajax veri dönüşü

burak001
446 defa görüntülendi

ajax ile php sayfama data gönderiyorum bunu json formatı ile yapıyorum dönüşte gelen jsona göre
işlem yaptırıyorum

ajax şöyle

<script>
$(document).ready(function(){

$("#sub").click(function(){

var kuladi = $("#kuladi").val();
var ads = $("#ads").val();
var sifre = $("#sifre").val();
var email = $("#email").val();
var tel = $("#tel").val();
var cevap = $("#cevap").val();

$.ajax({
url:"pages/sifreunuttumislem.php",
type:"POST",
data:{"kuladi":kuladi,"ads":ads,"sifre":sifre,"email":email,"tel":tel,"cevap":cevap},
dataType:"JSON",
success:function(durum){
if(durum.basari){
window.location.href = "index.php?islem=giris";
}else if(durum.hata){
    alert(durum.hata);

}
}


});

});

});
</script>

php dosyam ise şöyle

  $array["basari"] = "Hesabınız başarıyla kurtarıldı";
  $id = $_SESSION["id"];

echo json_encode($array);

FAKAT altta sessionuma id atadığım yeri yazınca datalarım birdaha dönüş yapmıyor
ve yönlendirme olmuyor acaba sıkıntısı ne

Cevap yaz
Cevaplar (3)
aykhan
1376 gün önce

Php kodunun başına

ob_start();
session_start();

yaz, sonra ajax işlemini başlatdığında orda olan url yerine eğer htaccess ile www yönlendirmesi yaptıysan

$.ajax({
url:"https://www.SITEADI.COM/pages/sifreunuttumislem.php",
type:"POST",
data:{"kuladi":kuladi,"ads":ads,"sifre":sifre,"email":email,"tel":tel,"cevap":cevap},
dataType:"JSON",
success:function(durum){
if(durum.basari){
window.location.href = "index.php?islem=giris";

eğer www yönlendirmesi yapmadıysan https://SITEADI.COM olarak kullan yox eğer ssl serfikatın yoksa http://SITEADI.COM olarak kullan

Eğer sorun çözülmezsen Sessionu bir daha kontrol et, Gelen değerde Session açtırıp açdırmadığını kontrol et.

    $array["basari"] = "Hesabınız başarıyla kurtarıldı";
  $id = $_SESSION["id"];
  

Bu kodda ne yaptığını tam olarak anlayamadım $_SESSION['id'] niye değişkene aktarıyorsun ki, Sanırım session oluşturmaya çalışmışsın o zaman böyle olacak

    $array["basari"] = "Hesabınız başarıyla kurtarıldı";
    
    $id = "KULLANICI IDSI VE YA KULLANICI ADI";
    
      $_SESSION["id"] = $id ;
brainwasher
1376 gün önce

PHP kodunuzun başına

session_start();
zafer
1376 gün önce

Merhaba burak001,

Aslında ipucunu yakalamışsın. Session atamasından sonra işler tuhaflaşmaya başlıyorsa belli ki o satırda yaşanan bir sorun var.

Belki $_SESSION["id"] degerin tanımsız bir değer? Belki Session başlatmadan kullanmaya çalıştığın için yine tanımsız bir durum oluşuyor. Kısaca öncelikle Session durumunu sonrada Session{"id"] degerinin durumunu kontrol etmekte fayda var.