| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > Текстовый календарь |
| Автор: Aliance 13.9.2005, 23:28 | ||||||
| Хочу сделать календарь, куда будут заносится дни рождения (дата+комментарий) Но он должен выглядеть текстом, например:
Розовым выделено то, что уже прошло... И есть (на отдельной страничке) форма для добавления... В принципе легко, но нужен алгоритм. Особенно интересует закрашивание розовым. Как бы придеться читать дату во втором <td> и сравнивать с текущей, так? |
| Автор: Aliance 14.9.2005, 00:23 |
| Вот, набрасал небольшой эскизик... http://www.jsguide.spb.ru/BK/3.php Пока только чисто эскиз, даже без дизайна, что уж говорить о серверных скриптах ЗЫ: работать будет все на файлах... БД под такую мелочь заводить не хочу! |
| Автор: R.M. 14.9.2005, 00:28 |
| Aliance Сам спросил - сам ответил |
| Автор: Aliance 14.9.2005, 01:03 | ||
^^^ |
| Автор: R.M. 14.9.2005, 01:52 |
| Aliance Мне кажется без базы будет сложнее сделать ИМХО создай таблицу в базе а в ней поле дата, пусть туда добавляется дата, дальше сверяй с севодняшней датой если вчера - розовая, если севодня - белая, можно цвета в переменную забить и всё. К сожалению сейчас время мало, не могу написать, подожди завтра наишут |
| Автор: o.s.a. 14.9.2005, 07:43 | ||
ИМХО, тебе нужно сначала упорядочить даты, выбранные из БД/файла, а затем разделить их на 2 группы: до и после. И выводить одни закрашенными, другие - нет. |
| Автор: lina 14.9.2005, 09:00 | ||
Я бы сделала примерно так, как сказал o.s.a. Данные из файла считываются в массив, массив сортируется, далее находится индекс элемента массива, где дата совпадает с текущей и используются 2 цикла for . Первый for
|
| Автор: -=Ustas=- 14.9.2005, 11:32 |
| Aliance, в каком формате дату хранишь? |
| Автор: Mal Hack 14.9.2005, 17:52 |
| Как будет храниться инфа в данном случае не особо принципиально. Aliance тебе надо полуить массив, отсортировав по дате. Затем циклом по всему массиву сравнивать даты. Старая дата генеришь с одним CSS, больше - с другим, равна - с ьтретьим |
| Автор: Aliance 14.9.2005, 17:53 | ||
| o.s.a. Интересное предложение -=Ustas=- Пока ни в каком, я только думаю над алгоритмом, сам скрипт не пишу.
Лучше не нужно, используя чужие скрипты я мало чему научусь Добавлено @ 17:54 Mal Hack Спасибо, до вторника буду делать (не знаю когда время выпадет свободное), ко вторнику выдам результаты...или их отсутствие |
| Автор: PARROT 14.9.2005, 22:36 | ||
Вот мои мысли по этому вопросу: (правда немного недоделанные...)
|
| Автор: Aliance 16.9.2005, 12:42 |
Все, сделал запись в файл. Осталось:
|
| Автор: Aliance 21.9.2005, 18:07 |
| Все получилось: http://jsguide.spb.ru/BK/3.php Остался дизайн и регулярные выражения... С ними-то у меня и проблема... Лучше использовать eregi? |
| Автор: Mal Hack 21.9.2005, 21:25 | ||
Нет. preg. А для чего тебе там регулярки-то понадобились? |
| Автор: Aliance 22.9.2005, 15:20 | ||
А ты вот глянь последнюю запись, в поле дата там стоит строка, а не дата. Этого быть не должно Кроме того, нужно теги вырезать... а то создается угроза атаки |
| Автор: Mal Hack 22.9.2005, 16:08 | ||||
strip_tags();
А что мешает числом хранить? |
| Автор: [xoodo] 22.9.2005, 20:16 | ||
> htmlspecialchars() > htmlentities() > php.net > Если ты таки-признаешься, в каком формате хранится дата, то и от второго РЕГа избавимся. Скорее всего. ЗЫ. Обогнали уже 8)) |
| Автор: Aliance 22.9.2005, 23:12 | ||
То, что юзер может ввести туда что угодно. А мне нужно только дд.мм.гггг и никак иначе. |
| Автор: [xoodo] 28.9.2005, 19:40 | ||||
php.net > is_numeric() |