Приветствую, проблема заключается в расшифровке JSON формата
Вот сам запрос:
$.ajax({
method: "POST",
url: "/Register/Register.php",
//dataType: 'json',
data: {
login:loginVal,
password:passwordVal,
password2:password2Val,
email:emailVal,
name:nameVal
}
})
.done (function(msg)
{
a = JSON.parse(msg);
logInfo = "Этот логин уже занят введите другой";
emailInfo = "Этот адрес уже занят введите другой";
if (a===logInfo)
{
setErrorFor(login, logInfo);
}
else if(a===emailInfo)
{
setSuccessFor(login);
setErrorFor(email, emailInfo)
}
else
{
$('input.login').val('');
$('input.password1').val('');
$('input.password2').val('');
$('input.email').val('');
$('input.name').val('');
alert("Вы успешно зарегистрировались!");
}
что значит получить ответ в формате JSON ???
Насколько я понял это нужно сделать так:
$emailinfo = json_encode('Этот адрес уже занят');
echo $emailinfo;
я зашифровал его в JSON и отправляю ответом на AJAX запрос в JS script. После я его декодирую и сверяю, если он подходит, то добавляю в базу данные.
НО он то добавляет и останавливается , почему-то в JSON.parse попадает уже расшифрованное значение ответа и следовательно выдаёт ошибку : "Uncaught SyntaxError: Unexpected token В in JSON at position 0" - а сообщение в нём "вы успешно зарегистрировались".
Он почему-то ходит по циклу, т.е. когда сообщение уже сыграло свою роль и выгрузилось из памяти в него загружается пустое значение и я не могу понять почему.
Помогите пожалуйста разобраться в чём дело.