v2.5.2
Giriş yap

"Uncaught SyntaxError: Unexpected end of JSON input at JSON.parse" hatası

nahic2525
429 defa görüntülendi
       <form id="telefonform<?php echo $m['telefon_id'];?>" method="POST">


        
        <div id="mailonay<?php echo $m['telefon_id'];?>" class="form-group">
        <label  class="form-label">E-Posta Adresi</label>
        <input id="oymails" type="hidden" name="oy">
        <input type="email"  name="eposta" class="form-control" aria-describedby="emailHelp">
        <div  class="form-text">Geçerli Bir E-Posta Adresi Giriniz.</div>
        </div>

    
        <div id="onaykodu<?php echo $m['telefon_id'];?>" class="form-group">
        <label  class="form-label">Onay Kodunuz</label>
        <input type="text"   name="onay" class="form-control" >
        <input type="hidden" name="onaykodu">
        <div  class="form-text">4 Haneli Onay Kodunuzu Giriniz.</div>
        </div>

        <button id="mailgonderbuton<?php echo $m['telefon_id'];?>" type="submit" class="btn btn-primary mt-3">Kod Gönder</button>
        <button id="dogrulamakodbuton<?php echo $m['telefon_id'];?>" type="submit" class="btn btn-success mt-3">Anketi Onayla</button>

        </form> 
        
        
        <script>

$(document).ready(function(){


  $("#onaykodu<?php echo $m['telefon_id']; ?>").hide();
  $("#dogrulamakodbuton<?php echo $m['telefon_id']; ?>").hide();

});


$("#telefonform<?php echo $m['telefon_id'];?>").on('submit',(function(e){

$.ajax({
url:"islem.php",
type:"POST",
data:new FormData(this),
contentType:false,
cache:false,
processData:false,
success: function(data){

    veri=JSON.parse(data); 
    swal("Bilgi",veri.message,veri.status)

    if(veri.islemno=="1"){

  $("#oymails").attr('disabled');
  $("#mailonay<?php echo $m['telefon_id']; ?>").hide();
  $("#mailonay<?php echo $m['telefon_id']; ?>").remove();
  $("#mailgonderbuton<?php echo $m['telefon_id']; ?>").hide();
  $("#dogrulamakodbuton<?php echo $m['telefon_id']; ?>").show();
  $("#onaykodu<?php echo $m['telefon_id']; ?>").show();

}else{

}
}
});
return false;
}));
 </script>

sweetalert olarak kullanıyorum ilk formdan sonra ikinci form geliyor yani kullanıcı anket kodunu girip tamamlayacak fakan anketi onayla butonuna tıkladığımda Uncaught SyntaxError: Unexpected end of JSON input at JSON.parse hatasını alıyorum

 <script src="https://code.jquery.com/jquery-3.6.0.js" integrity="sha256-H+K7U5CnXl1h5ywQfKtSj8PCmoN9aaq30gDh27Xc0jk=" crossorigin="anonymous"></script>
 <script src="https://unpkg.com/sweetalert/dist/sweetalert.min.js"></script>

kaç gündür problemi çözemedim lütfen bilen birisi varsa yardım edebilirmi yada nere hata yapıyorum söyleyebilirmi ? şimdiden teşekkürler

islem.php 'de yazan kodlar ise bunlar hatalı olan div'i onaykodu olan form

if($mail->Send()){

$data['status']="success";
$data['message']="NOT:".$_POST['eposta'].' Adresine 4 Haneli Kod Gönderilmiştir.';
$data['islemno']="1";
echo json_encode($data); 
}else{
$data['status']="error";
$data['message']="OLMUYOR";
echo json_encode($data); 
}


if($_POST['onaykodu']){

$onay = strip_tags($_POST['onay']);

$data['status']="error";
$data['message']="OLMUYOR";
echo json_encode($data); 




}
tayfunerbilen
307 gün önce

cunku zaten backend'den JSON donduruyorsun, su kismi kaldir:

veri=JSON.parse(data); 

onun yerine direk data kullan zaten javascript objesi dönüyor olacak. console'a bakıp gelen değerlere bakabilirsin:

console.log(data)