Holidays

Праздники, события, дни рождения

Введение
Особенности
Инсталляция
Примеры
БД
Админ...
FAQ
Download
Форум
База Данных

||База данных||Переменные окружения||

БД состоит из двух текстовых файлов:

  • birthdays.dat
  • holidays.dat

В первом из них хранятся дни рождения Ваших друзей и знакомых. Во втором перечислены все известные праздники, просто памятные события, траурные дни, дни рождения, например, известных личностей или зданий, университетов, метрополитенов и т.д. и т.п.

В режиме администратора можно редактировать, корректировать и удалять определенные события.

Структура обоих файлов идентичная, и может быть разделена на три общих поля:

Дата Тип события Название, описание события

Разделитель между полями - TAB (табуляция).

  • Дата имеет следующий формат: ДД.ММ.ГГГГ. (ДД - день, ММ - месяц, ГГГГ - год). Разделитель - точка.
  • Тип события - это одно из четырех значений - B, H, M, E (латинские). Где B - день рождения, H - праздник, M - траурное событие, E - просто памятное событие.

Итак, имеем следующие форматы:

  • для дней рождений: ДД.ММ.ГГГГ   B   <тот, чей день рождения>;
  • для праздников: ДД.ММ.ГГГГ   H   <название праздника>;
  • для траурных событий: ДД.ММ.ГГГГ   M   <событие>;
  • для произвольных событий: ДД.ММ.ГГГГ   E   <событие>.

Разделитель - табуляция, а не пробелы!

Пример записи в БД Результат работы скрипта
09.05.1945    H    День Победы Дата Событие
09.05.1945 Через 37 дней праздник: День Победы (Пройдет 57 лет)

Год может быть опущен:

Пример записи в БД Результат работы скрипта
01.01    H    Новый год Дата Событие
01.01 Через 29 дней праздник: Новый год
21.05   M   День памяти умерших от СПИДа 21.05 Через 153 дня траурный день: День памяти умерших от СПИДа

Особенности задания даты

Даты событий, привязанные к дню недели, задаются по формату ДН.ММ.ГГГГ

Д - День недели:

  • П, M - Понедельник
  • В, T - Вторник
  • С, W - Среда
  • Ч, H - Четверг
  • Я, F - Пятница
  • У, S - Суббота
  • О, U - Воскресенье

Н - Порядковый номер дня недели в месяце. Н=5 - последний указанный день недели в месяце.

Перед днем недели допускается задание числа (тогда будет искаться день, у которого совпадают заданные число, день недели и месяц с годом, если они указаны).

Например: U1.04 - первое воскресенье апреля, M2.10 - второй понедельник октября, 13F каждую пятницу 13-го числа и т.д. и т.п.

Пример записи в БД Результат работы скрипта
U1.04   H   День геолога Дата Событие
01.04 Через 90 дней праздник: День геолога
M2.10   E   Начало всемирной недели письма 08.10 Через 63 дня : Начало всемирной недели письма
13F   M   Пятница,13 13.07 Через 47 дней траурный день: Пятница,13

 




IliaSemenov, © 2001