Почему из формы приходит дата 01.01.1970?
Использую плагин WSForm, поля с датой.
После отправки формы приходит письмо с датой January 1 1970 независимо от выбора в поле.
Настройки формата в поле пробовал разные - не помогает.
Пробовал демоформу, не меняя никаких настроек - все равно приходит January 1 1970
В настройках WP стоит формат d F Y H:i
Дополнительно:
Ответы:
потому что это Timestamp=0, который соответствует дате 01.01.1970
https://www.unixtimestamp.com/
проверь, почему у тебя в базу пишется нулевое время, timestamp
- я в курсе, что это timestamp = 0
В базу значения пишутся корректно
- denism300, если честно, не вижу где тут timestamp, он должен быть Longint.
и очень смущает другой формат времени для id=217 - Steel_Balls, формат зависит от установленного в настройках. Игрался с разными.
Проблема локализована, но не решена.
Причина в JS DataTimePicker. Если в настройках плагина отключить его поддержку - приходит в почту корректно, если включить, то January 1 1970.
Написал разрабам
Это приходит зарождение эпохи unix. Ошибка timestamp видимо
Сервер не настроен.
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос


Дата
01.01.1970почти всегда означает, что где-то значение даты превратилось в timestamp0или пустую дату, а потом было отформатировано как нормальная дата. Если в базе WSForm хранит выбранное значение корректно, проблема, скорее всего, на этапе шаблона письма, форматирования поля или преобразования даты перед отправкой.Что проверить по порядку:
Если где-то в коде используется
strtotime(), пустая строка или неверный формат могут датьfalse, а дальше при приведении получится нулевая дата:$raw_date = '13.05.2026'; $timestamp = strtotime($raw_date); if ($timestamp) { echo date_i18n('d.m.Y', $timestamp); }
Для русских форматов
d.m.Yлучше использоватьDateTime::createFromFormat():$date = DateTime::createFromFormat('d.m.Y', $raw_date); if ($date instanceof DateTime) { echo $date->format('d.m.Y'); }
Если даже демоформа WSForm отдаёт 1970, проверьте версию PHP, сам плагин и конфликт с фильтрами даты в теме. Временно отключите сниппеты, которые меняют формат даты/времени, и проверьте отправку на стандартной теме. Так станет понятно, виноват плагин или сторонний код.