noder_ss
@noder_ss
Линуксоид-энтузиаст и SQL разработчик

Почему часы показывают на два часа раньше моего часового пояса в жс?

Почему .getHours() выдает время на 2 часа раньше моего часового пояса? Как выводить время относительно часового пояса? Вот сайт и код: https://simply-comments.netlify.app/
let ubp = new Date();
    
let date_upd = ubp.getHours() + ":" + ubp.getMinutes() + " " + ubp.getDate() + "/" + Number(ubp.getMonth()+ 1 )+ "/" + ubp.getFullYear()
    conn.query(
      `INSERT INTO messages(name, content, date) VALUES('${user.name}', '${user.content}', '${date_upd}')`
    )
  • Вопрос задан
  • 128 просмотров
Решения вопроса 2
yarkov
@yarkov Куратор тега JavaScript
Помог ответ? Отметь решением.
Писать самому дату создания записи в БД, если на то нет веских причин, не следует. Тем более хранить время и дату текстом не стоит. Для этого во всех БД есть специальные типы данных.
Рекомендую ознакомиться с документацией к используемой БД, в частности с типами для хранения данных.
Ответ написан
Комментировать
@fbi_agent26
Если часовой пояс не правильно стоит на сервере - команда для phpmyadmin.
SET time_zone = '+02: 00';
а вообще как заметил Алеша - учитесь пользоваться базой данных.
открываем бд в PhpMyAdmin и находим нужную таблицу - там напротив будет кнопка структура
6419145ade643765789483.png
открываем и находим колонку с датой, меняем тип данных на время.
в запросе своем убираем всю чушь которая выводит время, и ставим NOW()
получается так
INSERT INTO messages(name, content, date) VALUES('${user.name}', '${user.content}', 'NOW()')

Если дату надо сделать не сейчас а + месяц то делаем вот так - DATE_ADD(NOW(), INTERVAL 30 DAY)
здесь 30 дней , можешь месяц поставить, но там не равное количество дней, если кто купит подписку в феврале с интервалом месяц то получит 28 дней ( пример просто ).
INSERT INTO messages(name, content, date = DATE_ADD(NOW(), INTERVAL 30 DAY) VALUES('${user.name}', '${user.content}', )
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы