Два идентичных даты и времени;один показывает 12 часов другой 24 часа - PullRequest
2 голосов
/ 12 августа 2011

У меня есть форма с двумя полями даты и времени.Пользователь вводит дату (гггг-мм-дд) и время (3 поля; час, минута, am / pm).

По какой-то причине первое не сохраняется как 24-часовое время,

Следующие данные являются результатом ввода:

2011-1-1 16:30

Я использую strtotime () для преобразования строки в формат даты и времени.

$dateOccured = date('Y-m-d H:i:s', strtotime($dateOccurred));
$dateResolved = date('Y-m-d H:i:s', strtotime($dateResolved)); 

Если я использую print_r (), чтобы посмотреть на результаты этого, он отображается правильно.

Дата произошла:

[year] => 2011
[month] => 1
[day] => 1
[hour] => 16
[minute] => 30
[second] => 0
[fraction] => 0
[warning_count] => 0

Дата разрешена

[year] => 2011
[month] => 1
[day] => 1
[hour] => 16
[minute] => 30
[second] => 0
[fraction] => 0
[warning_count] => 0

Оба показывают правильное время: 16:30 (или 16:30).Когда я смотрю в своей базе данных, это то, что отображается.

Дата произошла

2011-01-01 04:30:00

Дата решена

2011-01-01 16:30:00

Я знаю, что это проблема с переменной dateOccurredпотому что, если я заменю его на dateResolved в моем запросе, он будет вставлен правильно.Что я не могу понять, это где проблема?Что мне не хватает, что вызывает это?

Спасибо.


Если бы это была база данных, не заменила ли бы переменная dateOccurn на dateResolved в запросе?Вот запрос INSERT

"INSERT INTO 
  incidents (
    incidentNumber, date, itFunction, issue, severity,
    owner, dateOccurred, dateResolved, locationsImpacted, businessImpact,
    rcaRequired, rcaReceived, rootCause, notes) 
VALUES (
  '{$incidentNumber}', '{$date}', '{$itFunction}', '{$issue}', '{$severity}',
  '{$owner}', '{$dateOccurred}', '{$dateResolved}', '{$locationsImpacted}', '{$businessImpact}',
  '{$rcaRequired}', '{$rcaReceived}', '{$rootCause}', '{$notes}')"

Они оба поля даты и времени.

1 Ответ

4 голосов
/ 15 августа 2011

Нашел проблему ... опечатки!Я целый час бьюсь головой о стену, пытаясь понять это!$dateOccured (один R ... rrrrrr)!Поместите это в смущающий столбец.

Я узнал, что сообщения об ошибках можно сделать более полезными, используя

error_reporting(E_ALL | E_NOTICE)

Спасибо Chronial за это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...