[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: дата в БД
quickxyan
столкнулся с такой проблемкой. в mysql таблице можно указать тип поля date, но там он по буржуйському стандарту mm.dd.yyyy.
а у мне надо, чтобы в нашем формате было типа дд.мм.гггг - возможно как-то поменять
чтобы в таблице поле было типа date, но по второму формату?

просто если нет, то прийдется при записи переделывать дату в другой формат и при вытаскивании с БД, менять обратно к нормальному виду.

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





Спустя 3 минуты, 32 секунды (5.05.2011 - 13:27) linker написал(а):
Дата в мускуле не по буржуйскому формату, а по тому формату по которому собственно можно правильно сортировать данные. Если ты на выводе хочешь иметь свой формат, то используй функцию DATE_FORMAT().

Спустя 9 минут, 16 секунд (5.05.2011 - 13:36) quickxyan написал(а):
спасибо.

Спустя 2 часа, 12 минут, 35 секунд (5.05.2011 - 15:48) Michael написал(а):
лучше храни временные отметки юникс в поле типа int.

Спустя 5 минут, 9 секунд (5.05.2011 - 15:54) linker написал(а):
Между TIMESTAMP и DATETIME есть разница, поэтому стоит прежде немного подумать.

Спустя 10 минут, 39 секунд (5.05.2011 - 16:04) Michael написал(а):
Цитата (linker @ 5.05.2011 - 14:54)
Между TIMESTAMP и DATETIME есть разница, поэтому стоит прежде немного подумать.

Это мне? А я ничего не говорил ни про TIMESTAMP ни про DATETIME . cool.gif

Спустя 5 минут, 2 секунды (5.05.2011 - 16:09) linker написал(а):
Michael
временные отметки юникс - это и есть TIMESTAMP.

Спустя 13 минут, 35 секунд (5.05.2011 - 16:23) Michael написал(а):
linker
Такой запрос
SELECT CURRENT_TIMESTAMP=FROM_UNIXTIME(UNIX_TIMESTAMP())

вернет истину.
Что в нем временные отметки юникс:
CURRENT_TIMESTAMP или UNIX_TIMESTAMP() ?

Спустя 16 минут, 3 секунды (5.05.2011 - 16:39) linker написал(а):
UNIX_TIMESTAMP() - есть временная отметка unix. CURRENT_TIMESTAMP - есть аналог NOW(). Но я о другом, про разницу можно почитать в официальном мануале.

Спустя 14 часов, 42 минуты, 9 секунд (6.05.2011 - 07:21) Michael написал(а):
Цитата (linker @ 5.05.2011 - 15:39)
UNIX_TIMESTAMP() - есть временная отметка unix.

Вот я про нее и сказал. Про число в секундах от ... Про то число, которое одинаковое в mysql, в php, в javascript и т.д. Не понимаю в чем ты запутался.


Спустя 1 час, 9 минут, 4 секунды (6.05.2011 - 08:30) linker написал(а):
Michael
Забей, smile.gif ты поймёшь разницу, когда будешь перемещаться по часовым поясам. К тому же, человек использует тип DATE.

Спустя 6 дней, 11 часов, 57 минут, 22 секунды (12.05.2011 - 20:27) Istsam написал(а):
в БД запиывай time();
тип поля в бд: int(11);
при выводе из бд: d.m.y,$time

Спустя 12 часов, 26 минут, 58 секунд (13.05.2011 - 08:54) linker написал(а):
Istsam
Читай выше. А потом открой phpMyAdmin и сиди любуйся на свои даты в виде целых чисел, а потом попробуй мозгом понять какая дата в какой записи. Если уж так не терпится использовать таймстампы, то для этого используется тип поля TIMESTAMP.

Спустя 35 минут, 59 секунд (13.05.2011 - 09:30) quickxyan написал(а):
всем спасибо. я решил таки по старому методу.
суть была в том, что на поле для ввода был прикручен js-календарик и он возвращал дату в формаде дд.мм.гггг, а в БД тип date как уже было сказано linker'ом гггг.мм.дд.
и вот мне надо было правильно записать, но не очень хотел игратся с конвертацией даты в нужный формат.
потом же за 5 минут накидал функцийку которая конвертирует дату с календарика в формат нужный для БД.


_____________
печатаю со скоростью 320 минут в знак...

плюсуем карму не стесняемся
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.