Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: TIMESTAMP
 
 автор: fip   (01.02.2007 в 19:48)   письмо автору
 
 

Добрый вечер!

Возникла проблема с выводом даты TIMESTAMP для календаря. Дату нужно сформировать в самом запросе в формате %Y-%m-%d или просто %d для того чтобы сравнить с выбранной датой пользователем

Пробую. в PHPMYADMIN следующие sql запросы:

SELECT date_format(date,'%Y-%m-%d') as date from date // возвращает null

SELECT UNIX_TIMESTAMP('date') from date // возвращает нули


Подскажите , что я неправильно делаю?Спасибо!

   
 
 автор: Trianon   (01.02.2007 в 20:16)   письмо автору
 
   для: fip   (01.02.2007 в 19:48)
 

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

   
 
 автор: fip   (01.02.2007 в 20:50)   письмо автору
 
   для: Trianon   (01.02.2007 в 20:16)
 

Имена не имееют значения, пробовал менять, результата не принесло.

Вот это работает SELECT FROM_UNIXTIME(1170277200) , но нужно получить дату из поля

   
 
 автор: Trianon   (01.02.2007 в 20:54)   письмо автору
 
   для: fip   (01.02.2007 в 20:50)
 


SELECT UNIX_TIMESTAMP(fld) AS ts FROM  tab 
SELECT DATE_FORMAT(fld, '%Y-%m-%d') AS dt FROM  tab 

   
 
 автор: fip   (01.02.2007 в 21:29)   письмо автору
 
   для: Trianon   (01.02.2007 в 20:54)
 

Не работает.

Заношу дату в базу следующим образом

$date_in=date("Y-m-d H:i:s");
$query = "INSERT INTO `d`(`dater`)VALUES(UNIX_TIMESTAMP('$date_in') )";

Поле dater в int(11)

Захожу в PhpMyAdmin , пишу sql запросы предложенные на форуме, выдаёт null

Если сделать вывод даты на php через while и date("Y-m-d", row[date]) всё замечтально выводится, но как я писал выше нужно отформатировать дату в самом запросе..Есть ещё варианты?

   
 
 автор: Trianon   (01.02.2007 в 21:34)   письмо автору
 
   для: fip   (01.02.2007 в 21:29)
 

поле dater в int1(11) - с этого и надо было начинать. Для MySQL это просто число


SELECT dater FROM d -- выдаст таймштамп как есть.

SELECT FROM_UNIXTIME(dater) as dttm FROM d -- выдаст дату-время в полном формате 

SELECT DATE_FORMAT(FROM_UNIXTIME(dater), '%Y-%m-%d') as dt FROM d -- выдаст дату согласно указанного формата


А заносите... правильно заносите. если только $date_in - в формате 'YYYY-MM-DD HH:MM:SS'

   
 
 автор: fip   (01.02.2007 в 23:17)   письмо автору
 
   для: Trianon   (01.02.2007 в 21:34)
 

Работает!
Большое , Спасибо!

   
 
 автор: Boss   (01.02.2007 в 20:48)   письмо автору
 
   для: fip   (01.02.2007 в 19:48)
 

Попробуйте следующим образом:

SELECT *, DATE_FORMAT(date,'%Y-%m-%d') as newdate FROM date


Работает? =)

   
 
 автор: fip   (01.02.2007 в 20:51)   письмо автору
 
   для: Boss   (01.02.2007 в 20:48)
 

Нет.

1 1170277200 NULL
2 1168635600 NULL

и тд


Забыл дописать , что тип поля int(11)

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования