Я пытаюсь настроить простой вызов AJAX, который отправляет его данные через JSON на мой PHP-скрипт, который затем возвращает данные.Как отправлять и получать с помощью AJAX и JSON
Но мне не повезло.
Вот мой код для отправки:
$.ajax({
url: ROOT+'Address/fetchAddress',
type: 'POST',
async: false,
dataType: 'json',
data: {
json: {
"Id":"0",
"Name":"Jim"
}
},
error: function(a, b)
{
alert(b)
},
success: function(data)
{
data = $.parseJSON(data);
alert(data)
}
})
Serverside:
public function fetchAddress()
{
$JSON = $_POST['json'];
echo json_decode($JSON);
}
Но я получаю "parseerror" в окне предупреждения и если я проверить ответ я получаю:
Warning: json_decode() expects parameter 1 to be string, array given in ...public_html\controllers\Address.php on line 20
у вас есть два это предъявляет иск, как к типам данных. Ваш серверный код ожидает, что параметр 'json' POST будет строкой, и это не так. Ваш jQuery AJAX-вызов ожидает, что ответ сервера будет действительным JSON, и это не так. –