Для сохранения данных в базу данных после редактирования в модальном окне вам понадобится использовать комбинацию JavaScript, AJAX и серверного языка программирования (например, PHP), который будет обрабатывать запросы AJAX и взаимодействовать с базой данных.
Вот пошаговая инструкция, как это можно сделать:
1. Создайте модальное окно с формой, в которой пользователь может внести необходимые изменения. Форма должна иметь поле для каждого атрибута, который нужно изменить, а также кнопку "Сохранить изменения".
2. Назначьте обработчик события submit формы, чтобы предотвратить ее стандартную отправку и осуществить отправку данных через AJAX. Вот пример кода:
document.getElementById('myForm').addEventListener('submit', function(event) { event.preventDefault(); // предотвращаем отправку формы // получаем данные из формы var formData = new FormData(this); // отправляем данные на сервер var xhr = new XMLHttpRequest(); xhr.open('POST', '/save-data.php', true); xhr.onreadystatechange = function () { if (xhr.readyState === XMLHttpRequest.DONE && xhr.status === 200) { // обработка успешного ответа от сервера (если требуется) } }; xhr.send(formData); });
3. Создайте файл на сервере (например, save-data.php
), который будет принимать AJAX-запрос и обрабатывать сохранение данных в базе данных. Для этого вам понадобится соединение с базой данных и выполнение соответствующих запросов. Вот пример кода на PHP:
<?php // подключение к базе данных $db = new PDO('mysql:host=localhost;dbname=mydatabase', 'username', 'password'); // получение данных из AJAX-запроса $attribute1 = $_POST['attribute1']; $attribute2 = $_POST['attribute2']; // выполнение запроса на сохранение данных в базе $stmt = $db->prepare("UPDATE mytable SET attribute1 = :attribute1, attribute2 = :attribute2 WHERE id = :id"); $stmt->bindParam(':attribute1', $attribute1); $stmt->bindParam(':attribute2', $attribute2); $stmt->bindParam(':id', $id); $stmt->execute(); // отправляем успешный ответ клиенту echo 'Данные успешно сохранены в базе данных!'; ?>
Обратите внимание, что это только общая структура решения, и вам может потребоваться настроить код в зависимости от вашей конкретной ситуации. Также обратите внимание на безопасность и валидацию данных, чтобы защитить вашу базу данных от несанкционированного доступа или ошибочного ввода пользователей.