Как создать и настроить модуль бронирования номеров в отеле на сайте в Wordpress?
Здравствуйте!
Я создаю сайт для отеля на WordPress и мне необходимо добавить модуль бронирования номеров. Я искал различные плагины, но не нашел идеального решения для своих потребностей. Поэтому решил самостоятельно создать этот модуль.
У меня уже есть база данных с номерами и свободными датами. Мне нужно, чтобы гости могли выбрать даты пребывания и номер, после чего заполненные данные отправлялись на сервер и бронирование сохранялось в базе данных.
Я попытался написать код, который отображает форму бронирования на странице с помощью шорткода:
<form action="URL_обработчика" method="POST">
<label for="check-in-date">Дата заезда:</label>
<input type="date" id="check-in-date" name="check_in_date">
<label for="check-out-date">Дата выезда:</label>
<input type="date" id="check-out-date" name="check_out_date">
<label for="room-select">Номер:</label>
<select id="room-select" name="room">
<option value="101">Номер 101</option>
<option value="102">Номер 102</option>
<option value="103">Номер 103</option>
</select>
<button type="submit">Забронировать</button>
</form>
Моя проблема заключается в том, что я не знаю, как обработать данные, полученные из формы, и сохранить бронирование в базе данных. Пожалуйста, помогите мне разобраться, как это сделать.
Заранее спасибо!
Ответы:
Чтобы обработать данные, полученные из формы, и сохранить бронирование в базе данных, вам понадобится создать обработчик формы на сервере. Вам потребуется использовать язык программирования, такой как PHP, и подключиться к вашей базе данных.
Вот пример кода на PHP, который может вам помочь:
<?php
// Подключение к базе данных
$servername = "localhost";
$username = "ваше_имя_пользователя";
$password = "ваш_пароль";
$dbname = "ваша_база_данных";
$conn = new mysqli($servername, $username, $password, $dbname);
// Проверка соединения
if ($conn->connect_error) {
die("Ошибка подключения: " . $conn->connect_error);
}
// Получение данных из формы
$checkInDate = $_POST['check_in_date'];
$checkOutDate = $_POST['check_out_date'];
$room = $_POST['room'];
// Подготовка и выполнение запроса в базу данных
$sql = "INSERT INTO bookings (check_in_date, check_out_date, room) VALUES ('$checkInDate', '$checkOutDate', '$room')";
if ($conn->query($sql) === TRUE) {
echo "Бронирование успешно сохранено.";
} else {
echo "Ошибка при сохранении бронирования: " . $conn->error;
}
$conn->close();
?>
В приведенном выше коде, вам нужно заменить "ваше_имя_пользователя", "ваш_пароль" и "ваша_база_данных" на соответствующие данные вашей базы данных. Также, убедитесь, что у вас есть таблица "bookings" со столбцами "check_in_date", "check_out_date" и "room".
После того, как вы создали обработчик формы, вам нужно указать его URL в атрибуте "action" вашей формы. Например, если вы сохранили обработчик формы в файле "booking-handler.php", то ваша форма должна выглядеть следующим образом:
<form action="booking-handler.php" method="POST">
<!-- остальной код формы -->
</form>
Теперь, когда пользователь заполняет форму и нажимает кнопку "Забронировать", данные будут отправляться на ваш обработчик формы, который сохранит их в базе данных.
Надеюсь, этот ответ поможет вам разобраться с созданием модуля бронирования номеров на вашем сайте на WordPress. Удачи!