| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > Дата => timestamp |
| Автор: Loncaster 10.3.2008, 20:29 | ||||
Вообщем есть на сайте форма, в которой кроме прочей информации, нужно в текстовом поле указать дату события. Например: 22/03/2008. В базе же я хочу хранить эту дату в виде таймштампа.
На выводе: VAR 1 01/01/70 Если же пишем вот так:
То на выходе получаем правильно VAR 1 22/03/08 Но вводят-то как правило так как в первом случае, а тут получается надо ставить месяц на первое место, а потом число.... Может какой-то иной способ для данной задачи есть ? |
| Автор: Assessor 10.3.2008, 20:39 |
| а почему обязательно текстовое поле использовать? почему select-ом не сделать? |
| Автор: Feldmarschall 10.3.2008, 20:49 |
| explode()+mktime() но я бы дату в виде секунд хранить в базе не стал. |
| Автор: SelenIT 10.3.2008, 20:50 | ||
Это, если я не ошибаюсь, французский формат? http://php.net/strtotime
т.е. сначала месяц, потом число. Для французского и русского/немецкого формата (число/месяц, число.месяц) придется explode-ить строку руками и подставлять в mktime. А вообще тема непростая, вот http://habrahabr.ru/blog/ui_design_and_usability/37222.html недавно высказывалось немало хороших (и не очень) идей... |
| Автор: Loncaster 10.3.2008, 20:52 | ||
Почему не стал бы ? Очень удобно оперировать потом выборкой дат событий не менее чем за 5 дней до сегодняшней даты и т.д.... Помоему достаточно удобно. |
| Автор: Feldmarschall 10.3.2008, 21:00 |
| Loncaster, удобно хранить дату, а не дату+время, когда нужна только дата. удобно средствами БД оперировать выборкой с датой. удобно, в конце концов, когда дату можно прочесть безо всяких преобразований. вот это - удобно. а чикаться с секундами (тем более, не зная команду mktime) - это называется не "удобно", а "на любителя". вопрос, впрочем, не принципиальный, и делать можно как угодно. просто не надо говорить "удобно", если знаешь только один вариант, и не знаешь другие. |
| Автор: Loncaster 12.3.2008, 22:32 |
| Ув. Feldmarschall за помощь спасибо. Я и не отрицаю опыт в пхп у меня маловат, бывает и такое ;) В любом случае, реализовал все через datetime .. |
| Автор: Feldmarschall 13.3.2008, 10:56 |
| Если ты говоришь, что пользователь вводит дату, по почему хранишь не в date, а в datetime? |
| Автор: MoLeX 13.3.2008, 11:01 | ||
оффтоп из последних двух ответов вырезал. Loncaster, не где тебя идиотом не обзывали, так что зря не кипитсиь... |
| Автор: Loncaster 15.3.2008, 21:08 | ||
Видимо потому что решил хранить и время тоже. |