2016-01-12 6 views
0

Я делаю вызов AJAX, но не возвращаю значение в обработчике success. Это мой вызов AJAX. Я проверил, что это ударять PHP файл правильноAJAX вызов не возвращает значения из PHP

var msj; 
$.ajax({ 
    type: "POST", 
    url: "ajaxFile.php", 
    data: { 
     name: name, 
     status: status, 
     description: description, 
     action: 1 
    }, 
    sucess: function(data){ 
     msj = data; 
     alert(data); 
    } 
}); 
alert(msj); 

Мой PHP код выглядит следующим образом:

if (isset($_POST['action'])) 
{ 
    if ($_POST['action'] == 1) 
    { 
     $obj = new project($_POST['name'], $_POST['active'], $_POST['description']); 
     $obj = testInput($obj); 
     $check = validateName($obj->getName()); 
     if ($check == 1) 
     { 
      echo $nameError; 
     } 
     else 
     { 
      print "asdasdasd"; 
     } 
    } 
} 

Пожалуйста, помогите мне отслеживать ошибки.

+4

@ParthTrivedi почему? Данные, возвращаемые с PHP, это просто строка –

+0

Можете ли вы включить 'var_dump ($ _ POST)' в вопрос? – Thaillie

+0

Можете ли вы записать '$ _POST ['action']' это в верхней части страницы? –

ответ

1

Насколько я вижу, в вашем коде есть синтаксическая ошибка. Там sucess вместо success.

0

Вы предоставляете функцию обратного вызова «успех». Вы также должны предоставить обратный вызов «error», чтобы вы могли отлаживать и видеть, что не так. Вы также можете предоставить «полный» обратный вызов, который будет использоваться в обеих альтернативах.

var msj; 
    $.ajax({ 
     type:"POST", 
     url:"ajaxFile.php", 
     data:{name:name,status:status,description:description,action:1}, 
     complete:function(data){ 
      msj=data; 
      alert(data); 
     } 
    }); 
alert(msj); 

В вашем PHP, вы можете добавить

header('Content-Type: application/json'); 

, чтобы убедиться, что JQuery идентифицировать хорошо ваш веб-службы.