Jump to content
Дизайн и модификация IPS Community IPBSkinsBETA
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
Kosiak

UTF-8 и все, все, все...

Recommended Posts

Есть живой форум на Win-1251 (IPB 2.0), после апгрейда на версию форума 2.2 хочу изменить кодировку на UTF-8.

 

Вопрос: Как?

Share this post


Link to post
Share on other sites

При новой установке, просто перекодирую лэнг-файлы (русские) в UTF-8 - русский отображается нормально, но в админке, если пишешь по-русски (к примеру название сайта) буква "И" отображается козябрами.... Вот.

Share this post


Link to post
Share on other sites

Глобальные настройки - кодировка.

Share this post


Link to post
Share on other sites

Нет. Там сложнее. Я даже ответить не могу.

Там речь идет о кодировке базы. С этим самые большие проблемы.

Share this post


Link to post
Share on other sites

Viper

Оч. смешно (((

 

Fisana

Да, базы были переконвертированы в UTF-8, но проблему с "И" и возможно другими символами это не снимает...

Share this post


Link to post
Share on other sites

Думаю, стоит дождаться ответа Dr.Freddy.

Я, к сожалению, не по этой части и о проблеме знаю поверхностно.

Share this post


Link to post
Share on other sites

Вообще я не шутил, я просто не понял сразу что речь о кодировке базы.

 

Сталкивался с подобным при работе с HostCMS, там я это решал путем запроса в базу, который перестраивал кодировку на нужную мне. Составить подобный запрос для IPB могу попробовать, но лучше действительно дождаться ответа тех людей, которые разбираются в этом профессионально.

Share this post


Link to post
Share on other sites

Если дело неотложное, ему лучше написать. Данные для связи найдете в контактах.

Share this post


Link to post
Share on other sites

Fisana

Нет, это пока терпит

Share this post


Link to post
Share on other sites
Перевод форума IPB на UTF-8 кодировку.

 

 

Вам понадобится:

1. Дистрибутив форума IPB в UTF-8 кодировке.

2. MySQL подготовленный для работы в UTF-8 кодировке. Желательно версии 4.1 и выше.

3. EmEditor и Notepad2 для работы с файлами форума.

4. Немного терпения.

 

Чистая установка форума в UTF-8 кодировке.

 

Настраиваем MySQL.

 

MySQL-кодировка: UTF-8 Unicode (utf8)

Сопоставление соединения с MySQL: utf8_general_ci

 

У базы данных созданной для форума сопоставление соединения должно быть выставлено в utf8_general_ci

 

Настраиваем соединение с БД в файлах форума.

Для того, чтобы все данные точно заносились в БД в корректном виде надо в файлах, где идет соединение с БД добавить:

 

mysql_query('SET NAMES UTF8');

mysql_query('SET CHARACTER SET UTF8');

mysql_query("SET collation_connection='utf8_general_ci'");

 

По идее это достаточно сделать только в \ips_kernel\ class_db_mysql.php

После

if ( ! mysql_select_db($this->obj['sql_database'], $this->connection_id) )

{

$this->fatal_error();

return FALSE;

}

 

Но для перестраховки я прописал данные указания в нескольких файлах, где идет соединение с БД ($this->DB->connect())

 

\sources\ipsclass.php

ipchat.php (если кто использует)

и т.д.

 

Далее заливаем файлы на хостинг и производим установку. Если функция форума "Календарь" выдает неправильные короткие дни недели, то заменяем файлы

calendar.php в \sources\action_public

и

lang_global.php в cache\lang_cache\ru

 

файлами из архива дистрибутива.

 

Перевод уже имеющегося форума в UTF-8.

 

Первое, что советую сделать перед переводом форума в utf-8 кодировку – это сделать бекап базы данных форума и самого форума.

 

Далее делаем отдельный дамп база данных форума и открываем его в EmEditor. Сохраняем его в UTF-8 кодировке.

У каждой таблицы DEFAULT CHARSET=utf8 меняем на DEFAULT CHARSET=utf-8

 

Потом производим настройку MySQL (см. Чистую установку), настраиваем соединениес БД форума в файлах и заливаем их на хостинг. Также загружаем дамп БД форума в utf-8 кодировке.

 

Ланг файлы установленных модов надо переводить в UTF-8. Если где в файлах модов или скинов идет указание кодировки win1251, то заменяем ее на utf-8.

© Kuja

 

Сам не делал, но всё решаемо. Попробуйте по этой инструкции, в случае проблем, думаю, стоит обратиться к её автору.

Share this post


Link to post
Share on other sites

Спасибо, попробую.

Share this post


Link to post
Share on other sites

Столкнулся с проблемой...

У меня так исторически сложилось что база форума находиться в УТФ-8

Сейчас стоит инвижин 2,2,2 английский, и вроде как нормально работает.

На днях пытался обновиться до 2,3,3 (русский) - результат...

Либо сам форум в иероглифах, а посты в нормальной кирилице, либо посты в иероглифах а форум нормально отображаеться

*нормально то отображается, но в разделе "настройки" в админке есть только таблица в которой отсутствуют категории настроек (вообще ни как не отображаются) а присутствуют только количество настроек в этих категориях....

 

Перепробовал пару методов, в том числе и описанный выше - так и не получилось подружить инвижин и базу в УТФ8...

 

Может кто-то чем поможет... ? я честно говоря теряюсь... сейчас к сожалению времени нет этим в упор заняться - сессия...

Пробовал перекодировать базу в вин1251, не получилось... видно неправильно пробовал...

 

В общем жду ваших советов, и заранее вам спасибо

 

Если в чем-то по ходу дела сам разберусь - обязательно отпишусь, может кому полезно будет...

Share this post


Link to post
Share on other sites
Либо сам форум в иероглифах, а посты в нормальной кирилице,
при таком случае, я бы просто сконвертировал языковые файлы в utf-8 кодировку. Иначе конвертируйте БД, но это уже не бесплатно наверно

Share this post


Link to post
Share on other sites

Что не бесплатно?

я пока что считаю что конвертировать базу в win 1251 это единственный выход (который я вижу) из данной ситуации

 

Я же чуть выше писал (возможно не достаточно понятно)

В случае если посты видны нормально, а сообщения форума иероглифами - есть еще одна проблема кроме ленг-файлов (конвертировать пробовал)

У меня в админке пропадают разделы с настройками (на странице "настройки")

И еще был замечен глюк - не работает ссылка "перейти к новым постам в этой теме"....

Может еще что не работате....

 

Короче простым конвертированием ленг файлов вопрос не решается

(это было помоему первое что я попробовал)

Share this post


Link to post
Share on other sites

1. Конвертировать файлы не надо, просто залить от русской версии их.

2. В админке не забыть указать кодировку windows-1251 в общих настройках.

3. Конвертировать БД из утф в вин. Этот пункт можно заменить на выставление utf-8 в conf_global.php

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...