Консультация № 66964
14.12.2006, 15:26
0.00 руб.
0 1 1
Здравствуйте!

Как изменить формат даты и времени полученные из базы данных mysql, в формат понятный JavaScript?
В примере строчка для создания js скрипта. $created - дата полученая из базы. Что-то типа "2006-12-14 13-46"
Вообще-то это продолжение
http://rusfaq.ru/info/question/66869
Я кое-что покрутил, у меня даже заработало, но вот не timestamp, ни автозаполнение поля текущем временем сделать не получилось.

Приложение:
echo "document.writeln("<p>создано: "+(new Date(".$created.").toLocaleString()+"</p>");";

Обсуждение

Неизвестный
15.12.2006, 08:25
общий
это ответ
Здравствуйте, Талипов А Н!

echo ‘document.writeln("создано "+new Date(‘.strtotime("2006-12-14 13:46").‘000).toLocaleString())‘;

обратите внимание: strtotime - возвращает метку в секундах, а Date принимает метку в МИЛЛИсекундах, надо или умножать на 1000 или просто дописать в конец 000, и не заключайте аргумент Date в кавычки, он должен быть Numeric

и немного по теме:
Аргументы Date в JS могут быть:
dateObj = new Date(year, month, date[, hours[, minutes[, seconds[,ms]]]])
где year, month, date, hours, minutes, seconds,ms - соответственно год, месяц, день, час, минута, секунда, миллисекунда цифрами
или
dateObj = new Date(dateVal)
где dateVal- если цифра - то метка времени UTC в миллисекундах,
а если строка, то все сложнее
посмотрите справку метода Date.parse(), там все подробно расписано, а в кратце, если не "заморачиваться" со днями недели, названиями месяцев и т.п., а только цифрами, то формат должен быть:

mm/dd/yyyy [hh:[mm:[ss]]] - именно так - месяц, день, год; разделителем может быть "/" или "-"

в Вашем случае или форматируйте дату по этому правилу(лучше прямо в запросе SQL), или удобнее всего выводить сразу в UTC.
Форма ответа