Подскажите, что то с кодировкой

Статус
В этой теме нельзя размещать новые ответы.
P

pa-shok

Прохожие
Вот поставил я IPB (ipb_v2.1.7.rus.ibr)
Всё нормально установилось, но почему то в сообщения пишутся вопросиками
вида: ??? ???? ? ????????? ???? ?
и потом меню на половину русское, на половину вопросиками
мне сказали что дело в кодировке, но как её изменить?
если у меня всё там вопросиками!:mad: :nezn:
 
В глобальных настройках форума, в строчке Кодировка страниц форума - вставь windows-1251
 
к тому же в окнах сохдаваемых ява скриптами, типа Помощник - my assistant и "быстрое редактирование" нужно искать в шаблонах строки "iso...
 
так вроде такая и стоит

Что такое "кодировка"? Для тех кто не знает - вкратце, это когда вы заходите на форум и видите вместо русских букв кракозябры, иероглифы и прочую подобную живность.
Нам потребуется поменять кодировку таким образом, чтобы никаких проблем не было.

1. Итак, первым делом идём в Админцентр -> Skins & Templates -> Manage Board Wrappers. На каждом наборе шаблонов нужно произвести следующие изменения: нажать Edit, найти
PHP:
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />

и заменить его на
PHP:
<meta http-equiv="content-type" content="text/html; charset=windows-1251" />


Если вы используете устаревшую версию форума 1.1.x, нужно будет найти код

PHP:
</head>

и прямо перед ним добавить
PHP:
<meta http-equiv="content-type" content="text/html; charset=windows-1251">


2. Теперь приведём в нормальный вид всплывающие окна.
Для этого лезем в файл skin_global.php, что в папке Skin/s* (если у вас несколько скинов, нужно отредактировать файл в каждом скине).
В этом файле в функции function pop_up_window нужно найти

PHP:
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
и заменить на

PHP:
<meta http-equiv="content-type" content="text/html; charset=windows-1251" />


Если вы используете устаревшую версию форума 1.1.x, нужно в sources/functions.php найти вот этот кусок кода:

PHP:
<head>
                   <title>$title</title>
                   $css
                </head>

и сделать из него вот такой:

PHP:
 <head>
                   <title>$title</title>
                   $css
                   <meta http-equiv=\"content-type\" content=\"text/html; charset=windows-1251\">
                </head>

Внимание! После внесения изменений в skin_global.php, равно как и в любой другой файл в папке Skin/s* , нужно направиться в Админцентр -> Skins & Templates -> Manage HTML Templates и нажать там внизу кнопочку Run Tool. Если у вас несколько шаблонов для форума, Run Tool нужно запустить, последовательно выбирая все шаблоны (run on template set).

Внимание! Если на вашем сервере используется PHP в Safe Mode, в папке Skin/s* может ничего не оказаться. Если там ничего не оказалось, тогда придётся отредактировать соответствующие куски кода прямо в SQL-базе.
Лезем в Админцентр -> Skins & Templates -> Manage HTML Templates, жмём там ссылку Manage HTML.
Для версий 1.2, 1.3 находим раздел Global HTML elements, в нём секцию pop_up_window. Жмём Edit Single и вносим там изменения из пункта 2.
Для версии 1.1 здесь ничего делать не надо.

3. Избавляемся от возможных проблем в окне редиректа.
За кодировку в окошке редиректа отвечает функция function Redirect($Text, $Url, $css) в файле Skin/s*/skin_global.php. Находим эту функцию в нужном файле. Теперь находим в ней вот этот код:

PHP:
</head>

Сверху дописываем:

PHP:
<meta http-equiv="content-type" content="text/html; charset=windows-1251" />

Под версией 1.1.х не запутаетесь, под версиями 1.2-1.3 нужно не перепутать этот </head> с тем </head>, что находится выше, в функции pop_up_window (там мы уже всё исправили).

Внимание! Если на вашем сервере используется PHP в Safe Mode, лезем в Админцентр -> Skins & Templates -> Manage HTML Templates, жмём там ссылку Manage HTML.
В разделе Global HTML elements находим секцию Redirect Page. Жмём Edit Single и вносим там изменения из пункта 3.

И вообще, если вы под Safe Mode, привыкайте все изменения вносить через Админцентр
 
От себя могу добавить поменять везде где можна до установки italic1_general_ci (или что типа этого уже точно не помню) на cp1251_general_ci
 
найди где у тебя выполняется пхпшная функция mysql_select_db и на след.строке добавь
mysql_query ("set character_set_client='cp1251'");
mysql_query ("set character_set_results='cp1251'");
mysql_query ("set collation_connection='cp1251_general_ci'");
 
в настройках еще нужно поставить кодировку.. windows-1251
 
Не факт, что кодировка у топикстартера битая. Дамп БД был или с нуля ставил IPB?
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху