Проверка интервала времени

  • Автор темы Автор темы Lemming
  • Дата начала Дата начала

Lemming

Новичок
Проверка интервала времени

Привет. Уменя возник вопрос.

При заказе товара , пользователь должен выбрать верменной промежуток, тоесть время сколько он будет владеть этим товаром. Не меньше месяца.

Мне необходимо сделать проверку.Заказан ли этот товар уже на ту дату на которую выбрал пользователь. Если не заказан то все хорошо. А если на этот период времени товар занят то вывести сообщение.

Статус заказа товара в базе выглядет следущим limit_id | tovar_id | from | to

limit_id - индификатор верменного промяжука

From - с какой даты
To - по какую дату.

Например с 2006-10-06 по 2006-12-06 товар заказн.
А пользователь захотел заказать его с 2006-11-06 по 2006-12-31. ОШИБКА. Товар уже заказан.

У меня ни как в голову не приходит как это можно проверить.
 
проверка, пересекаются ли интервалы [from1, to1] и [from2, to2]:
from2 <= to1 and from1 <= to2
 
Реально работает) Благодарю тебя

-~{}~ 06.10.06 10:26:

И тогда ещё один вопрос.. Как .. можно вывести график заказов.
Тоесть это полоска разделенная на 12 месяцев. Если товар заказ на определенный период то закрашивать этот период красным цветом , если свободен то зеленым.
Зарание спавибо.
 
Мда . незнаком я с этой библиотекой. Щас почитаю механизм работы.
Надо просто алгоритм понять. Как можно пробежаться по всем дням начиная с FORM и заканчивая TO ?
 
Wicked
сдаётся мне, ты не понял вопроса.
закрашивать можно прекрасно и средствами хтмл.

Lemming
Как можно пробежаться по всем дням начиная с FORM и заканчивая TO ?
понятие цикла тебе незнакомо?
 
понятие цикла тебе незнакомо?
Кончено знакомо. Но как пробежаться именно по промежутку который определен Датой?

А идея реализации HTML.

Мой вариант. Создать таблицу с 365 ячейками и проверять если в этот день заказ занят то закрашивать ячейку в крассный цвет, и наоборот.

Наверное есть другой способ
 
Начет этого то понятно.
Как определить какие по счету дни в году в промежутке, ну например с 2006-10-10 до 2006-11-10, чтобы я мог закрасить ячейки
 
смотреть внимательно в документации как получить из даты номер дня в году
 
цикл от 1 до 365
И ТЫ ЕЩЁ СПРАШИВАЕШЬ, как в нём определить, какой день в году?!!!
 
Lemming
Внимательно читаем документацию на функцию date() - на неё тебе любезно указали выше - http://ru2.php.net/date . И что мы там видим???

string date ( string format [, int timestamp] )

Таблица 1. В параметре format распознаются следующие символы

z | Порядковый номер дня в году (нумерация с 0) | От 0 до 365
 
Сверху