1) смотрим консоль на ошибки
2) смотрим нетворк на предмет что отправляет и принеимает скрипт аякса
3) не тупим, включаем отладку на сервере,
ini_set('error_reporting', E_ALL); ini_set('display_errors', 1);
и тогда еще можно заметить что
4) по итогам пп. 3 и 4 видим, что постом отправляется $_POST['x'] а не $_POST['model'], ибо сервер нихрена не знает про model, вы ему передали пару ключ-значение.
UPD: я сейчас скажу кое что, за что меня будут пинать местные гуру фронта: Возьми гребаный JQ и не морочь себе голову. вот буквально все там нормально сделано.
var url = 'some.url';
var dataset = {"x": 5};
$.ajax({
url: url,
dataType: "json",
type: "POST",
dataset:dataset,
success: (function (data) {
if (data == 'ok') {
doCoolStuff();
alert ('Yeeei!');
}
else {
alert('Booo!');
}
})
})