Intereting Posts
Неужели это неправильно, если не использовать сеттеров и геттеров? Что-то не так с моим кодом cURL (http status of 0)? PHP Загрузить файл, ограничить максимальную скорость и рассчитать скорость загрузки Тип намека на PHP 7 – массив объектов Как вы можете использовать php xdebug, если вы находитесь на NAT за брандмауэром? Php Excel установил полное выравнивание данных столбца Как получить доступ к N-му элементу массива в PHP Как создать цикл для этого выпадающего меню? Как установить значение для кнопок «Радио» Когда вы редактируете? Самая быстрая реализация для выполнения нескольких подстановок строк в Python PHP Newsfeed с перезагрузкой Переключение между мобильными и стандартными представлениями с помощью css / php styleswitcher медленная производительность командной строки php – это нормально или у меня есть проблема с установкой? 401 Несанкционированный запрос DELETE для RESTful API в laravel через Ajax PHP и MySQL: mysqli_num_rows () ожидает, что параметр 1 будет mysqli_result, boolean given

Code Logic для предотвращения столкновения между двумя оговорками

Я работаю над системой резервирования конференц-зала в PHP 5.1, где мне нужно обеспечить механизм, который не может одновременно зарезервировать один номер в один и тот же день в тот же день. Система хранит time_in, time_out, from_date, to_date в базе данных. Какой алгоритм следует использовать для предотвращения столкновения?

Первоначально я думал, что держать time_in и time_out поля UNIQUE в базе данных, но в сценарии, где пользователь A книги от 9 to 5 on 12-05-2014 т.е.

**User A** time_in => 09:00 time_out => 05:00 reservation_date => 12/05/2014

и пользователь B приходит и книги за 12 до 3 в тот же день, т.е.

**User B** time_in => 12:00 time_out => 03:00 reservation_date => 12/05/2014

Система будет принимать резервирование, так как time_in time_out отличается. Таким образом, этот алгоритм терпит неудачу.

Кроме того, у людей также есть возможность зарезервировать в течение нескольких дней, как я хочу зарезервировать номер 1 на 10 дней, каждый день с 9 до 5. Так может ли кто-нибудь помочь мне с алгоритмом здесь?

Related of "Code Logic для предотвращения столкновения между двумя оговорками"