У меня простой вопрос.
Я работаю над Zend Framework 2.
Я пытаюсь позвонить AJAX, чтобы получить все данные бронирования из таблицы. booking
передавая booking_id. Проблема в том, что запрос не выполняется по неизвестным причинам. Фактический запрос сложный, и он работает, когда я заменяю $ booking_id на фактический booking_id, например «22432». Следовательно, я считаю, что запрос в порядке, есть некоторые другие проблемы.
Но я не знаю, как получить ошибки / исключения запроса в вызове Ajax. Может кто-то помочь мне с этим?
Javascript:
$.post("dashboard/getBookingDataByBookingId", {
booking_id: bookingId,
},
function(data){
if(data.response == true) {
alert(data);
} else {
alert('failed');
}
}, 'json');
контроллер
public function getBookingDataByBookingIdAction()
{
$request = $this->getRequest();
$response = $this->getResponse();
if ($request->isPost())
{
$post_data = $request->getPost();
$booking_id = $post_data['booking_id'];
$booking_data = array();
$booking_data = $this->getBookingTable()->getBookingByUserIdAndBookingId($booking_id);
if (!$booking_data)
$response->setContent(\Zend\Json\Json::encode(array('response' => false, 'booking_data' => $booking_data)));
else {
$response->setContent(\Zend\Json\Json::encode(array('response' => true, 'booking_data' => $booking_data)));
}
}
return $response;
}
Модель bookingTable имеет публичную функцию:
public function getBookingByUserIdAndBookingId($booking_id)
{
$sql = "Select * from booking where id='".$booking_id."';
try {
$statement = $this->adapter->query($sql);
$res = $statement->execute();
return $res->current();
} catch (Exception $ex) {
return $ex;
}
}
Вы публикуете переменную с именем ‘id’:
{
id: bookingId,
}
Таким образом, вы должны получить к нему доступ как:
$post_data = $request->getPost();
$booking_id = $post_data['id'];
или более кратко:
$booking_id = $request->getPost('id');
Вам также следует использовать параметризованные запросы, чтобы избежать внедрения SQL.
Для получения ошибок / исключений в вызове Ajax используйте:
В Google Chrome используйте: ПОЧТАЛЬОН расширение
В FireFox пользователь: поджигатель Plugin