Форумы портала PHP.SU » PHP » SQL и Архитектура БД » Запись даты PDO запросом

Страниц (1): [1]
 

1. Andruxa - 01 Сентября, 2017 - 07:31:21 - перейти к сообщению
Всем привет!
Который день ломаю голову над простой задачей.
Нужно записать в таблицу в поле datedime дату добавления поста.

Если добавлять обычными средствами Mysql то есть функция NOW().
Но с PDO это не получается совместить.

Вот таким запросом пытаюсь сделать запись:
PHP:
скопировать код в буфер обмена
  1. $stm  = db_connect()->prepare("INSERT INTO af_text (name_autor, text_af, moderations, date) VALUES (:name_autor, :text_af, :moderations, :date ");
  2. $stm->bindParam(':date', $date, PDO::PARAM_STR);
  3. $stm->execute(array('name_autor'=>$_POST['login'], 'text_af'=>$_POST['text'], 'moderations'=>1, 'date'=>NOW() ));    


Подскажите, что делаю не так ?
2. Мелкий - 01 Сентября, 2017 - 09:21:52 - перейти к сообщению
А зачем пытаться передавать дату параметром?
PHP:
скопировать код в буфер обмена
  1. $stm  = db_connect()->prepare("INSERT INTO af_text (name_autor, text_af, moderations, date) VALUES (:name_autor, :text_af, :moderations, now()) ");


А лучше в default current_timestamp сразу указать для поля и не указывать дату при insert, если это подразумевается дата создания записи.
3. Andruxa - 01 Сентября, 2017 - 18:00:58 - перейти к сообщению
Мелкий, спасибо! Все получилось!
Теперь такой вопрос, в базе дата заноситься в формате 2017-09-01 17:47:58.
А как вывести из базы в формате d.m.Y ?
4. Andruxa - 01 Сентября, 2017 - 20:20:58 - перейти к сообщению
С выводом разобрался :
PHP:
скопировать код в буфер обмена
  1.  $date = date_create($info['date']);
  2.  $date=date_format($date, ' m.d.Y');
5. OrmaJever - 02 Сентября, 2017 - 02:44:40 - перейти к сообщению
в мускуле есть функция date_format

 

Powered by ExBB FM 1.0 RC1