Как уменьшить / уменьшить стоимость места в форме бронирования?

Мне было интересно, как вы можете уменьшить количество посадочных мест, используя php / mysqli?

Я настроил базовое расписание сессий с регистрацией клиента, и я хочу отображать количество оставшихся мест (или максимальное количество мест) и уменьшать его с каждой регистрацией клиента.

Спасибо!

Я создал ряд рассадки по темам, и у меня есть страница, на которой отображаются докладчики с темами и сессиями.

Ниже приведен код регистрации php в настоящее время.

if (isset($_POST['Name'])) {
$Name = mysqli_real_escape_string($con,$_POST['Name']);
$Address = $_POST['Address'];
$Phone = $_POST['Email'];
$Email = $_POST['Phone'];
$sql = "insert into registration (Name, Address, Email, Phone) values ('$Name','$Address','$Phone','$Email')";
//echo $sql;
$result2 = mysqli_query($con,$sql);

// get id from last query insert statement auto increment
$RegistrationID = mysqli_insert_id($con);
foreach($_POST['time'] as $sessionsID){
echo $sessionsID;
$sql = "insert into bookings (sessionsID, RegistrationID) values ($sessionsID, $RegistrationID)";
echo $sql;
mysqli_query($con, $sql);}<?php
$sql3 = "select Time, SessionID FROM sessions LIMIT 0, 30 ";

$result = mysqli_query($con,$sql3);

while ($row = mysqli_fetch_assoc($result)) {

//  $i++;
echo '<input type="checkbox" value='.$row['SessionID'].' name="time[]">'.$row['Time'].'</label>';}
?>

1

Решение

Вот шаги, которые я бы предпринял:

  1. Создайте таблицу (или добавьте к существующей, в зависимости от вашей структуры БД) со столбцом, который содержит количество мест.
  2. Вызовите его из БД в переменную, например. $seatпри каждой регистрации.
  3. Сделай это $seat--; (уменьшение на единицу) или просто $seat = $seat - 1;,
  4. Обновите БД новым значением.
1

Другие решения

Я не вижу, чтобы вы использовали количество мест в любом месте. Когда вы вставили запись для билета, подтвержденного в то же время, вы должны обновить число доступных мест, вычитая количество забронированных мест.

Для простоты реализации сделайте так:

  1. Выберите количество забронированных билетов.
  2. Обновите количество оставшихся мест на общее количество забронированных мест. Сделайте это для каждой вставки забронированного билета.
1

По вопросам рекламы [email protected]