не могудобавить текущую дату в базу mysql

  • Автор темы Автор темы Vlad_c
  • Дата начала Дата начала

Vlad_c

Guest
не могудобавить текущую дату в базу mysql

в базе поле описано как date
беру текущую дату

$today = getdate();
$month = $today['mon'];
$mday = $today['mday'];
$year = $today['year'];

$cur_data = $month . $mday . $year;
формат получается: 12182003
если это поле заносится в базу то оно пишет 0000-00-00
может ее как то надо конвертировать для mysql
 
обязательно надо конвертировать.
для этого надо посмотреть в документации формат поля date, и сконвертировать в него.
 
В мускуле фодмат даты такой:
yyyy-mm-dd
для добавления текущей даты проще использовать функцию NOW() или CURDATE()
 
ладно не буду мучиться добавлю как строку int а потом ее разберу

большое спасибо за помощь!
 
Не знал что почитать ман или воспользоваться готовым решением это мучение :)
 
если ты имеешь в виду unix timestamp, то это не очень удобно.
тебе же нужна только дата, а не дата и время.
во всех остальных случаях ты совершаешь грандиозную ошибку.

к тому же, непонятна твоя проблема.
вместо плода твоей фантазии $month . $mday . $year переделать эту строку в НОРМАЛЬНЫЙ формат.
Это так трудно?
 
кстати склеил строки так:
$cur_data = $year.$month.$mday

и она занеслась в базу

Falc -;
 
ну вот и хорошо.
уговорили.
Это же нам надо, чтобы у тебя дата в нормальном формате была.
 
А не проще переложить задачу добавления текущей даты на базу ? Сделай default для поля NOW(), а при инсерте давай туда '' - и не надо париться с преобразованиями - все само
 
Лажаю - не тот тип.

Однако общая идея была не париться с преобразованиями в пхп а делать это встроенными функциями mysql - благо они есть.
 
Средства есть, но для хранения TIMESTAMP'а, а не даты.
И потом с типом TIMESTAMP надо быть очень осторожным. Я лично не раз его херил прогоняя какой-нибудь апдейт по данным :)
 
Но если поле дата, а втыкать вместо значения now() то будет счастие...
 
Сверху