Таблица с данными из бд:
<tr>
<td><div class="alert <?=$colorClass?>" role="alert"><p><?=$users['id']?></div></td>
<input type="hidden" name="form_id" value="<?=$users['id']?>">
<td><div class="alert <?=$colorClass?>" role="alert"><p><?=htmlspecialchars($users['delivery_adress'], ENT_QUOTES)?></p></div></td>
<td><div class="alert <?=$colorClass?>" role="alert"><p><?=htmlspecialchars($users['delivery_time'], ENT_QUOTES)?></p></div></td>
<td><div class="alert <?=$colorClass?>" role="alert"><p><?=htmlspecialchars($users['surname'], ENT_QUOTES)?> <?=htmlspecialchars($users['name'], ENT_QUOTES)?> <?=htmlspecialchars($users['second_name'], ENT_QUOTES)?></p></div></td>
<td><div class="alert <?=$colorClass?>" role="alert"><p><?=htmlspecialchars($users['sum'], ENT_QUOTES)?></p></div></td>
<td><button type="button" name="delivery_status" value="1" class="btn btn-xs btn-success mb-3" id="delivered">Отдал</button></td>
<td><button type="button" name="delivery_status" value="2" class="btn btn-xs btn-danger mb-3">Отказ</button></td>
<td><button type="button" name="delivery_status" value="3" class="btn btn-xs btn-warning mb-3" data-toggle="modal" data-target="#exampleModalLong">Перенос</button></td>
</tr>
dost.php, который обрабатывает её:
<?php
require_once('db.php');
if(!empty($_POST['delivery_status']))
{
$form_id = (int) $_POST['form_id'];
$status = (int) $_POST['delivery_status'];
$SQL = "UPDATE Users SET delivery_status='$status' WHERE id='$form_id'";
$result = mysqli_query($link, $SQL);
}
?>
AJAX, который я написал, и который почему-то не отрабатывает, т.е. в бд не сохраняются данные, полученные от кнопки, а просто загружается пустая страница с dost.php.
$('button[name="delivery_status"]').on('click', function() {
let $btn = $(this);
let id = $btn.closest('tr').find('input[name="form_id"]').val(); // получаем id
// формируем данные
let data = {
form_data: id,
delivery_status: $btn.val()
};
$.ajax({
type: "POST",
url: "dost.php",
data: data
}).done(function() {
alert("Данные сохранены");
});
return false;
});
Попробовал file_put_contents("test.txt", $_POST['form_id']); - там сохраняются корректные значения id. Вардамп пост-запроса выглядит следующим образом, т.е. не передаются value кнопок. array(2) { ["form_id"]=> string(1) "1" ["delivered"]=> string(0) "" } В консоли никаких ошибок, php отдаёт 200, только это: [Violation] Forced reflow while executing JavaScript. SQL-запрос корректный, т.е. на чистом php с перезагрузкой страницы отрабатывает корректно. Помогите разобраться, пожалуйста. Нужно чтобы в зависимости от нажатой кнопки заносились 1, 2 или 3 в delivery_status, привязанную к id.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Использую PHP 72 Как добавить ключ 'experience' в имеющийся массив $doctors, если в двух foreach ключи одинаковые??
По умолчанию атрибуты товара выводятся под основным фото товара, на странице товараКак можно изменить это расположение атрибутов, чтобы...
История: Хотя воспользоваться API от курьерской компанииДля работы они предлагают Soap
Хотите улучшить этот вопрос? Update the question so it's on-topic for Stack Overflow на русском