Некорректно отображается дата последнего захода пользователя на форум

Автор Vitalik90, 03 мая 2010, 22:55:44

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Vitalik90

Вверху форума и в профиле пользователя выводится дата и время последнего посещения форума пользователем. Форум переведен на русский в кодировке windows-1251. У меня сбивается кодировка при выводе месяца (он там словами пишется) в выводе даты последнего посещения. Кто-нибудь знает как это можно исправить? Или где в исходниках форума находится код, который генерирует эту дату?

Vitalik90

Решил проблему сам  :)
Нашел в коде функцию работы с датой, которая возвращала строку с нужной мне датой (strftime()), начал искать про неё информацию в интернете и нашел решение проблемы как-раз для SMF: http://www.simplemachines.org/community/index.php?topic=272151.0

Вот что помогло мне:
ЦитироватьЯ решил проблему кардинально =)

В файле /Sources/Subs.php нашел строчки

        // Format any other characters..

        return strftime($str, $time);

и перед "return strftime($str, $time);" добавил:

        $str = convert_cyr_string($str,'i','w');

Получилось:

        // Format any other characters..

        $str = convert_cyr_string($str,'i','w');
        return strftime($str, $time);

regman

не помогло. А также не помогло в кодировке файла index.russian.php - вместо ru_ru вписать $txt['lang_locale'] = 'ru_RU.cp1251';


regman

ну если в утф-8 - то сплошные квадратики вместо кириллицы...

Ошибся. Как раз добавление строки $str = convert_cyr_string($str,'i','w'); решает проблему, но только с русским языком, но не с украинским.

digger®

Цитата: regman от 27 сентября 2014, 02:05:20
ну если в утф-8 - то сплошные квадратики вместо кириллицы...

Ошибся. Как раз добавление строки $str = convert_cyr_string($str,'i','w'); решает проблему, но только с русским языком, но не с украинским.
Форум пустой - снесите и установите с нуля в utf-8, установите нужные локализации в utf-8 и будет все хорошо.