Здравствуйте.
Делаю небольшой POST запрос через ajax. Локально (OpenServer) все хорошо отрабатывает. Залил на сервер - ошибку возвращает
500. Как я понял, это из за того что в метод
getPrice приходят пустые значения в массиве
$_POST. Если на сайте заполнить нужные поля, то все работает. Из за чего такое может быть? Локально при пустых значения все работает, на сервере - нет.
$('body').on('click', '.js-check-price', function () {
let form = $('.js-form-add-order'),
btn = $(this);
btn.button('loading');
$.ajax({
method: "POST",
url: '/getPrice',
dataType: 'json',
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
},
cache: false,
data: form.serialize(),
success: function (result) {
if(result['error'] === '0') {
console.log(result);
} else {
console.log(result);
}
})
});
web.php
Route::post('getPrice', 'cdekController@getPrice');
controller
public function getPrice(Request $request) {
$sum = 0;
foreach ($_POST["WareKeyItem"] as $k => $item) {
$sum += $_POST["CostItem"][$k]*$_POST["AmountItem"][$k];
}
echo json_encode(array('error' => '0', 'price' => $sum));
exit();
}