Суть проблемы такова, в самом опенкарте временная зона указана РФ/Москва, а сервер находится совсем в другом месте. И получается что если клиент сделал заказ в 10:00, то в админке отображается время заказа 03:00. Как это побороть, подскажите пожалуйста? Обратился в службу поддержки хостинга, они что-то изменили и сейчас вроде как время для сайта московское http://joxi.ru/v29l53xuGDNZpm , но все равно в заказах ничего не поменялось. Пробовал в файле system/startup.php изменить PHP: if (!ini_get('date.timezone')) { date_default_timezone_set('UTC');} на PHP: if (!ini_get('date.timezone')) { date_default_timezone_set('Europe/Moscow');} так же в файле php.ini (в корне сайта) добавил строчку date.timezone = Europe/Moscow; но ничего не помогло :(
Zulus, я боролся с таким на впске. Оказалось все было в timezone в бд, менял через phpmyadmin. Потом нашел эти модули, которые меняют время пхп и бд, может помогут -
Вопрос решен! Установил по рекомендации Bnopen модуль Database and PHP timezone (всего один vqmod файлик) и в настройках магазина, на вкладке "Сервер" появился дополнительное поле с выбором часового пояса выбрал свою временную зону - Europe/Moscow и все заработало отлично, время заказов в админке соответствует реальному времени заказа клиента!
Проблема должна была быть не только с временем заказов, но везде, где используется SQL NOW(), например, срок действия акций, просто там разница в несколько часов не так заметна. Решить можно безо всяких модулей, учитывая, что зона задаётся один раз, а потому интерфейс в админке не сильно нужен. Путь для версии 1.5: /system/database/ Путь для версий 2.x: /system/library/db/ Для mysqli драйвера: файл mysqli.php в конце метода __construct вписать: Для версий 1.5, 2.0, 2.1: PHP: $this->link->query("SET time_zone = 'Europe/Moscow'"); Для версии 2.2: PHP: $this->connection->query("SET time_zone = 'Europe/Moscow'"); Для mysql драйвера: файл mysql.php в конце метода __construct вписать: Для версий 1.5, 2.0, 2.1: PHP: mysql_query("SET time_zone = 'Europe/Moscow'", $this->link); Для версии 2.2: PHP: mysql_query("SET time_zone = 'Europe/Moscow'", $this->connection);