Исходя из моего вопроса выше, в настоящее время я создал систему бронирования. Эта система предназначена для бронирования конференц-зала. В этой системе администратор отвечает за бронирование конференц-зала после получения запроса от персонала. Таким образом, администратору необходимо ввести некоторую информацию, такую как:
1) Электронная почта запрашивающей стороны
2) Комната
3) Цель
4) Время начала и Время окончания
Наиболее важным параметром является Комната, Назначение и Время начала и Время окончания. Например, если номер B был забронирован сегодня с 8:00 до 22:00, то другие сотрудники не смогут забронировать номер B в течение этого времени.
Моя проблема заключается в том, что если я еще проверю параметр, это все равно могу забронировать номер, хотя дата и время столкнулись.
Ниже указан мой код:
<?php
require_once "../../../config/configPDO.php";
require_once "../../../config/check.php";
$Email = $_SESSION['login_user'];
$UserID = $_SESSION['userid'];
if(isset($_POST['Submit'])) {
require '../../../config/PHPMailer/Mailer/Exception.php';
require '../../../config/PHPMailer/Mailer/PHPMailer.php';
require '../../../config/PHPMailer/Mailer/SMTP.php';
$Requested_by = $_POST['Requested_by'];
$date = $_POST['date'];
$timeFrom = $_POST['timeFrom'];
$timeTo = $_POST['timeTo'];
//to add %20 for space
$from = rawurlencode($timeFrom);
$to = rawurlencode($timeTo);
$Meeting_Description = $_POST['Meeting_Description'];
$Room_ID = $_POST['Room_ID'];
$Admin_email = $_POST['Admin_email'];
$Remark = $_POST['Remark'];
$Book_Status = $_POST['Book_Status'];
$StartTime = $date." ".$timeFrom;
$EndTime = $date." ".$timeTo;
//check start end, room no
$url2 = "http://172.20.0.45/TGWebService/TGWebService.asmx/displayBookingData?timeStart=$timeTo&timeEnd=$timeFrom&Room_ID=$Room_ID&Book_No=";
$data2 = file_get_contents($url2);
$json2 = json_decode($data2);
$results = $json2->bookingList;
$url3 = "http://172.20.0.45/TGWebService/TGWebService.asmx/selectRoom?Room_Desc=&Fac_ID=&Room_ID=$Room_ID";
$data3 = file_get_contents($url3);
$json3 = json_decode($data3);
$results2 = $json3->roomList;
$url4 = "http://172.20.0.45/TGWebService/TGWebService.asmx/getUserInfo?userID=$UserID";
$data4 = file_get_contents($url4);
$json4 = json_decode($data4);
$results3 = $json4->userList;
if(empty($results)){
if (isset($results3[0])){
$sql = "INSERT INTO booking(Requested_by, Book_Date, StartTime, EndTime, Meeting_Description, Room_ID, Admin_email, Remark, Book_Status)
VALUES(:Requested_by, :Book_Date, :StartTime, :EndTime, :Meeting_Description, :Room_ID, :Admin_email, :Remark, :Book_Status)";
$query = $conn->prepare($sql);
$query->bindparam(':Requested_by', $Requested_by);
$query->bindparam(':Book_Date', $date);
$query->bindparam(':StartTime', $StartTime);
$query->bindparam(':EndTime', $EndTime);
$query->bindparam(':Meeting_Description', $Meeting_Description);
$query->bindparam(':Room_ID', $Room_ID);
$query->bindparam(':Admin_email', $Admin_email);
$query->bindparam(':Remark', $Remark);
$query->bindparam(':Book_Status', $Book_Status);
$query->execute();
if(!empty($results)){
echo "<script>alert('Something were going wrong. Please try again.')</script>
<script>window.location = '../../dashboard/admin/dashboard_admin.php'</script>";
}else{
echo "<script>alert('Data sucessfully saved!')</script>
<script>window.location = '../../dashboard/admin/dashboard_admin.php'</script>";
}
}else{
echo "<script>alert('Invalid email address')</script>
<script>window.location = 'manual_booking_admin.php'</script>";
}
}else{
echo "<script>alert('The time range you are selected is conflicted with another meeting')</script>
<script>window.location = 'manual_booking_admin.php'</script>";
}
?>
Могу ли я узнать, в чем проблема с моим кодом?