Veri jquery ajax çağrısından döndürülen Başlarken

5 Cevap php

Ben bir jquery ajax çağrısı tarafından çağrılan bir işlevi veri geri almak için çalışıyorum. Benim fonksiyonu aa php dosyasında bulunan ve Liket görünüyor onun

valid_user() {

    $id = $_POST('id');

    if($id == 'hello'){
        return true;
    }
    else{
        return false;
    }
}

ve burada benim ajax çağrısı

$.ajax({
    type: "POST",
    url: path + "valid_user",
    sucess: function(msg) {
         alert("Data returned: " + msg );
     }
 });

Ben everthing test ettik ve fonksiyon wokring (bu örnekte için değiştirildi) ama ben) (fonksiyon valid_id dönüş değeri olamaz. Bunu nasıl alabilirim? Değişken msg boş geri geliyor tutar. Teşekkürler

5 Cevap

Benim anlayış, çeşitli sorunlar vardır.

1) the method valid_user() is not been called.
2) The url doesn't look like it is correct either.
3) The "success" keyword is spelt "sucess".
4) You aren't passing any "data".

İşte isteyebilirsiniz ne özel bir örnek ajax çağrıdır.

 $.ajax({
   type: "POST",
   url: "validateUser.php",
   data: "id=49",
   success: function(msg){
     alert( "true or false: " + msg );
   }
 });

Eğer yanlış gibi sucess görünüyor ---- ama bu koşu kodu olmayabilir. Sen second parametresini kontrol etmelidir success:

success:function(data, textStatus)

Sen işlevini çağırır ve çıkış akımına dönüş değerini yazar PHP sunucu tarafı kod yazmak gerekir. Örneğin:

<?php echo valid_user(); ?>

Bu çalışması gerekir - sadece durumda POST değeri sterilize daha iyi koymak isteyebilirsiniz.

PHP dosyası:

$id = isset($_POST['id']) ? trim($_POST['id']) : '';
$return = 'false';

if($id!=''){
   valid_user($id);
}

echo $return;

valid_user($id) {
    if($id == 'hello'){
        $return = 'true';
    }
}

jQuery Çağrı:

<script>
id = 'hello';    
$.ajax({
   type: "POST",
   url: "validateUser.php?id="+id,
   success: function(msg) {
      alert("Data returned: " + msg );
   }
});
</script>

Yardımlarınız için teşekkür ederim, ben o çalışma değildi nedeni () true veya false dönüyordu benim işlevi valid_id becuase oldu, sorunu anladım, ve ben echo "true" geri dönmek için gerekli; ve "false" echo; Ben bunu bir kere msg değişken veri doğru veya yanlış içeriyordu.