Перейти к публикации
View in the app

A better way to browse. Learn more.

Дизайн и модификация Invision Community

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

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

Опубликовано:

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

 

Вопрос: Как?

Рекомендованные сообщения

Опубликовано:
  • Автор

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

Опубликовано:

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

Опубликовано:

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

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

Опубликовано:
  • Автор

Viper

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

 

Fisana

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

Опубликовано:

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

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

Опубликовано:

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

 

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

Опубликовано:

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

Опубликовано:
  • Автор

Fisana

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

Опубликовано:
Перевод форума 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

 

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

Опубликовано:
  • Автор

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

  • 9 месяцев спустя...
Опубликовано:

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

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

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

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

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

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

 

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

 

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

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

 

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

 

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

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

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

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

 

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

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

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

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

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

 

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

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

Опубликовано:

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

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

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

Опубликовано:

Саннис, тут надо расписать как конвертировать еще:)

Создайте аккаунт или войдите в него для комментирования

Сейчас на странице 0

  • Нет пользователей, просматривающих эту страницу.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.