Не могу получить конкретную дату из db -php - PullRequest
1 голос
/ 11 сентября 2010

Я пытаюсь установить дату и время в моей базе данных mysql, но вместо этого мой код показывает текущую дату.

Это код, который я пытаюсь:

$db_date = $row_news['nm_date'];
$year = substr($db_date, 0, 4);
$mon = substr($db_date, 4, 2);
$day = substr($db_date, 6, 2);
$orgdate = date("l dS F Y",mktime($mon, $day, $year));
$date = $orgdate

Сценарий предназначен для отправки $ date по электронной почте, который должен быть значением $ row_news ['nm_date'], но вместо этого я получаю текущую дату "Суббота, 11 сентября 2010 года.

Спасибо за вашу помощь.

Ответы [ 2 ]

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

Вы получаете сегодняшнюю дату, потому что mktime () не возвращает правильное значение. Если вы проверите ввод вручную для mktime () - http://www.php.net/mktime - вы увидите, что порядок параметров такой:

mktime ($hour, $minute, $second, $month, $day, $year)

так что вы, вероятно, хотите:

$orgdate = date("l dS F Y", mktime(12, 0, 0, $mon, $day, $year));

Ваш код предполагает, что дата указана в формате ГГГГММДД (или ГГГГММДДЧЧИИСИ). Предполагая, что это правильно, и на самом деле это не в формате даты (ГГГГ-ММ-ДД), вышеизложенное должно решить вашу проблему.

Редактировать: Если даты указаны в формате ГГГГ-ММ-ДД, вам необходимо настроить подстроки, чтобы включить тире:

$year = substr($db_date, 0, 4);
$mon = substr($db_date, 5, 2);
$day = substr($db_date, 8, 2);
0 голосов
/ 11 сентября 2010
$db_date = $row_news['nm_date'];
$orgdate = date("l dS F Y", $db_date);
$date = $orgdate;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...