We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 25441
    • 60 Posts
    Quote from: ShaggyDoc at Dec 09, 2009, 10:32 PM

    Ну, а сам SQL-файл перекодирован? Откройте в Notepad++ и посмотрите, в какой он кодировке. Если "Кодировать в ANSI", то сделайте "Преобразовать в UTF-8 без BOM". В SQL после этого все русские символы должны правильно показываться. И в базе - тоже. И в админке - строки, берущиеся из базы (дерево и прочее). И в конфигурации сайта должна быть UTF-8.
    Сам sql-файл в Ansi as UTF-8, т.е. UTF-8 без BOM.
      • 981
      • 30 Posts
      Зачем для перекодировки SQL-дампа использовать Notepad++,
      если есть iconv ?
      А дамп можно сделать mysqldump...
        • 37379
        • 41 Posts
        Всем привет!

        Перекодировал базу из cp1251 в utf8, соблюдя все вышеописанные действия. Админка работает безукоризненно. А вот сайт выдает ошибку:

        Fatal error: Call to undefined function: mb_internal_encoding() in ...docs/assets/snippets/ajaxSearch/classes/ajaxSearchConfig.class.inc.php on line 110

        В упомянутом файле на 110 строчке читаем:

        if ($this->cfg[’mbstring’]) mb_internal_encoding("UTF-8");

        Версия modx 1.03. Вывод АjaxSearch везде из шаблонов убрал, не помогло, а ведь именно из за поиска и заводил кутерьму. Помогите пожалуйста, если кто понимает происходящее. Спасибо заранее... Да забыл сказать, версия АjaxSearch 1.9.0
          • 897
          • 1,620 Posts
          это у вас на хостинге не установлено дополнение php для мультибайтовых строк.

          обратитесь в поддержку хостера (часто в панели хостинга можно включить дополнения php)
            "Und wenn du lange in einen Abgrund blickst, blickt der Abgrund auch in dich hinein."

            Не используйте Revo для "просто сайтов". Используйте Evo

            Who can defeat the Russian bear?
            • 37379
            • 41 Posts
            Quote from: Aleksey at Jul 21, 2010, 08:56 PM

            это у вас на хостинге не установлено дополнение php для мультибайтовых строк.

            обратитесь в поддержку хостера (часто в панели хостинга можно включить дополнения php)

            Алексей, спасибо, да, действительно было отключено. Включил. Но теперь результат такой:

            Error: set_time_limit() [function.set-time-limit]: Cannot set time limit in safe mode
            Error type/ Nr.: Warning - 2
            File: /docs/assets/snippets/ajaxSearch/classes/ajaxSearch.class.inc.php
            Line: 78
            Line 78 source: set_time_limit($asCfg->cfg[’timeLimit’]);

            Есть ли возможность обойти такую засаду?
              • 897
              • 1,620 Posts
              это уже про ajaxsearch разговор создайте тему в соответствующем разделе
                "Und wenn du lange in einen Abgrund blickst, blickt der Abgrund auch in dich hinein."

                Не используйте Revo для "просто сайтов". Используйте Evo

                Who can defeat the Russian bear?
                • 10509
                • 21 Posts
                Здравствуйте!
                Первый сайт, который я делал на modx, получился в кодировке 1251 из-за особенностей настройки хостинга у РУ-центра. У них есть конфигурационный файл для каждого сайта, который, в частности, задает кодировку. Давно его хотел переделать в utf-8, да всё что-то руки не доходили. Сейчас дошли. Для начала обновился с 0.9.6.3 до 1.0.4. Добросовестно проведя манипуляции, которые рекомендовал Aleksey Stepanov + изменив файл конфигурации хостинга, уперся в странную, на мой взгляд, проблему. Либо сайт виден правильно, но в админке кракозябры, либо наоборот. Пришлось возвращаться к кодировке 1251, и пробовать вариант, который ближе к рекомендациям AKots + изменения в файле конфигурации хостинга (AddDefaultCharset UTF-8).
                В общем, сейчас база utf, сравнение - utf8_general_ci,
                в конфиг. файле стоит
                $database_connection_charset = 'utf8';
                $database_connection_method = 'SET NAMES';

                В общем, сайт нормально виден в кодировке utf, но с админкой беда. Структура сайта видна нормально, но все надписи админпанели как на рисунке.
                Удалось победить "вопросики в черных ромбиках" на кнопках визуального редактора, добавив в файл htaccess, расположенный в каталоге /manager/ строки:
                # Выключить обработку модулем mod_charset
                <IfModule mod_charset.c>
                  CharsetDisable On
                </IfModule>
                # Выставить кодировку по умолчанию стандартными средствами apache
                AddDefaultCharset UTF-8 

                других вариантов исправления ситуации пока найти не удалось... huh
                Никакого облегчения не приносит и добавление в тот же htaccess строки
                php_value default_charset utf-8


                В общем, пребываю в задумчивости... rolleyes
                  • 785
                  • 2,113 Posts
                  Quote from: Gaspasser at Nov 01, 2010, 05:07 PM

                  В общем, пребываю в задумчивости... rolleyes
                  Убедитесь, что выбран Язык системы управления: Russian-UTF8 и в конфигурации системы и в настройках менеджера, который подключается в системе. Скорее всего, настройки менеджера неверны.
                    Создание сайтов на MODx, поддержка сайтов, поисковая оптимизация, программирование, копирайтинг
                    Статьи о MODx, регулярно новые публикации
                    • 10509
                    • 21 Posts
                    Quote from: AKots at Nov 02, 2010, 12:41 AM

                    Quote from: Gaspasser at Nov 01, 2010, 05:07 PM

                    В общем, пребываю в задумчивости... rolleyes
                    Убедитесь, что выбран Язык системы управления: Russian-UTF8 и в конфигурации системы и в настройках менеджера, который подключается в системе. Скорее всего, настройки менеджера неверны.
                    Спасибо за ответ! Предполагал данный вопрос, поэтому опубликован скрин странички админ-панели с настройками языка системы управления и сайта. На самом деле их переключение почему-то никакого видимого эффекта не оказывает. Я что-то делаю не так? Либо настройки есть еще где-то? wink

                    Если в файле конфигурации отключить mod_charset, то получается обратная ситуация: админка выглядит читаемой, а структура сайта слева - нет (см. картинку) grin
                    <IfModule mod_charset.c>
                      CharsetDisable On
                    </IfModule>


                    В этом варианте в визуальном редакторе управление читаемо, а содержание страницы - нет (см. второй рис.) shocked
                    Обнаружил, что админпанель браузер выдает в кодировке 1251 huh

                    В общем, если не найду в обозримом будущем решения, видимо, придется возвращаться на windows-1251.
                    Ибо давно сказано:
                    Лучшее - враг хорошего.
                    Худшее из безумств - стремление к совершенству. grin

                      • 10509
                      • 21 Posts
                      Покопавшись в коде выяснил, что админка отдает свое содержание на русском языке в кодировке 1251, а содержимое базы - в utf-8.
                      Вот два кусочка исходного кода из блокнота.
                      Один часть (служебная) читается при установленной кодировке файла windows-1251
                      			<tr><td colspan="2"><b>Общие</b></td></tr>
                      			<tr><td width="200" valign="top">Заголовок: </td>
                      				<td><b>Мастер-класс</b></td></tr>

                      Другая часть (содержательная) - utf-8
                      			<tr><td colspan="2"><b>�����</b></td></tr>
                      			<tr><td width="200" valign="top">���������: </td>
                      				<td><b>Мастер-класс</b></td></tr>
                      


                      Таким образом, имхо задача сводится к вопросу: как заставить настроить админпанель на вывод страниц в кодировке utf-8? Сейчас в метатеге страниц админпанели выводится
                      <meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />


                      Такое ощущение, что не работает переключение из админпанели Инструменты > Конфигурация > Язык системы управления , т.к. переключиться на английский тоже не удается undecided - подвисает. Переустановка MODx не помогла...