При выполнении ajax выдает ошибку Requested JSON parse failed. При этом обработчик срабатывает(запись в базу идет). Что делать?
Ajax:
$(document).on('click', '#btn_reg',function() {
var formData = {
'login' : $("input[name='reg_login']").val(),
'password' : $("input[name='reg_pass']").val(),
'email' : $("input[name='reg_email']").val()
};
$.ajax ({
type: 'POST',
url: '/api/ajax.php',
data: formData,
dataType : 'json',
encoding: true,
error: function(jqXHR, exception) {
if (jqXHR.status === 0) {
alert('Not connect.\n Verify Network.');
} else if (jqXHR.status == 404) {
alert('Requested page not found. [404]');
} else if (jqXHR.status == 500) {
alert('Internal Server Error [500].');
} else if (exception === 'parsererror') {
alert('Requested JSON parse failed.');
} else if (exception === 'timeout') {
alert('Time out error.');
} else if (exception === 'abort') {
alert('Ajax request aborted.');
} else {
alert('Uncaught Error.\n' + jqXHR.responseText);
}
}
})
.done(function(data){
console.log(data);
alert('Успех!!!');
});
event.preventDefault();
});
Обработчик (сырая версия без проверок):
ini_set('display_errors','On');
error_reporting('E_ALL');
function __autoload($name){ include($_SERVER['DOCUMENT_ROOT']."/classes/_class.".$name.".php");}
$func = new func();
$config = new config;
$db = new db($config->HostDB, $config->UserDB, $config->PassDB, $config->BaseDB);
$login = htmlspecialchars($_POST["login"]);
$pass = htmlspecialchars($_POST["password"]);
$time = time();
$ip = $func->UserIP;
$email = htmlspecialchars($_POST["email"]);
$db->Query("INSERT INTO db_users_a (user, email, pass, referer, referer_id, date_reg, ip)
VALUES ('$login','$email','$pass','admin','1','$time',INET_ATON('$ip'))");