формат даты php - PullRequest
       11

формат даты php

2 голосов
/ 13 сентября 2010

Я пытаюсь вставить текущую дату из формы php в базу данных.

Мой запрос:

   $sql3="INSERT INTO orderDetails (compName, package, cost, date) VALUES ('$companyName', '$package', '$cost_record', 'date()')";

При этом получается следующее: 0000-00-00: 00: 00, что явно не правильно.

Кто-нибудь может порекомендовать, как заставить это отображать правильную дату / время?

Кроме того, мне нужно это в следующем формате:Как мне это сделать?

Спасибо!

Ответы [ 6 ]

1 голос
/ 13 сентября 2010

Вы должны использовать функцию php time() или mysql's UNIX_TIMESTAMP, это int(11) и используется следующим образом:

INSERT INTO orderDetails (compName, package, cost, date) VALUES ('$companyName', '$package', '$cost_record', UNIX_TIMESTAMP --

Затем вы создаете визуальную метку времени из php с помощью функции date().. во время вашего цикла в PHP.

1 голос
/ 13 сентября 2010

Использовать функцию SQL NOW():

$sql3="INSERT INTO orderDetails (compName, package, cost, date) VALUES ('$companyName', '$package', '$cost_record', NOW()";
0 голосов
/ 13 сентября 2010

Полагаю, ваш столбец date на самом деле имеет тип mysql DATETIME.

$sql3="INSERT INTO orderDetails (compName, package, cost, date) VALUES ('$companyName', '$package', '$cost_record', NOW())";

должен это сделать.

Вы можете сохранить его в типе DATETIME (вы увидите его как гггг-мм-дд чч: мм: сс), а затем отформатировать его в yyyymmddhhmmss, когда вы выберите его из базы данных:

SELECT DATE_FORMAT(date, '%Y%m%d%H%i%s') FROM orderDetails

http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html#function_date-format

0 голосов
/ 13 сентября 2010

См. Руководство по PHP относительно использования даты (): http://php.net/manual/en/function.date.php

Так что для ваших нужд это будет что-то вроде:

$date = date("YmdHis");
$sql3="INSERT INTO orderDetails (compName, package, cost, date) VALUES ('$companyName', '$package', '$cost_record', '$date')";

Также вы можете принять во внимание совет Фабрика. Использование метки времени UNIX, пожалуй, самый надежный способ.

0 голосов
/ 13 сентября 2010
$date = date ( 'Y-m-d H:i:s'); 
$sql3="INSERT INTO orderDetails (compName, package, cost, date) VALUES ('$companyName', '$package', '$cost_record', '$date')";
0 голосов
/ 13 сентября 2010
$sql3="INSERT INTO orderDetails (compName, package, cost, date) VALUES ('$companyName', '$package', '$cost_record', 'date(dmy)')";

или

$time = date('Ymd g:i');
$sql3="INSERT INTO orderDetails (compName, package, cost, date) VALUES ('$companyName', '$package', '$cost_record', " .$time . ")";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...