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

Проблема с кодировкой при обновлении с 2.2.1 до 3.2.3

Recommended Posts

Приветствую.

Такая проблема, после обновления с 2.2.1 до 3.2.3 все русские буквы кракозябрами

 

scsh_120116-112359.jpg

 

Как видно на скриншоте загадочным образом названия разделов и тем отображаются нормально.

В исходном коде страницы прописано в мета charset=windows-1251. Когда прописываю в conf-global.php

 

$INFO['sql_charset']            =    'utf8';

 

то в meta кодировка конечно же меняется на utf8 но картина следующая:

 

scsh_120116-112814.jpg

 

таким образом форум работает только без строчки

$INFO['sql_charset']

. Изначально в conf-global.php строчки

$INFO['mysql_codepage']

не было, я так понимаю она появилась в 2.3.х.

Базу конвертировал скриптом от Ritsuka.

 

Заранее большое спасибо за любую помощь.

Edited by Alexander Alyokhin

Share this post


Link to post
Share on other sites

IP.Board 3 работает с UTF-8. А в какой кодировке у вас база данных? Зайдите через phpMyAdmin, посмотрите в какой кодировке таблицы БД (должна быть utf8_general_ci).

Если кодировка другая, надо будет конвертировать БД в UTF-8 (в дистрибутиве форума, в папке Tools, насколько я помню, есть скрипт для этого).

Share this post


Link to post
Share on other sites

я вкурсе что UTF-8. именно utf_general_ci и стоит в phpmyadmin. после удаления INFO['sql_charset'] из конфига и ручного переключения в браузере на unicode все становится ок.. кроме названий тем которые превращаются в ромбики.

Edited by Alexander Alyokhin

Share this post


Link to post
Share on other sites

Думаю, дело в языковом кэше, который в cp1251. Посмотрите какая кодировка в файлах в папке /cache/lang_cache/1. В файлах, где есть кириллица, кодировка должна быть UTF-8 (без BOM).

Edited by weiss

Share this post


Link to post
Share on other sites

Думаю, дело в языковом кэше, который в cp1251. Посмотрите какая кодировка в файлах в папке /cache/lang_cache/1. В файлах, где есть кириллица, кодировка должна быть UTF-8 (без BOM).

 

utf.. главный вопрос почему вот это scsh_120116-112814.jpg когда прописываю $INFO['sql_charset'] = 'utf8';

Share this post


Link to post
Share on other sites

Покажите лог ошибок SQL (SQL Error Logs).

Edited by weiss

Share this post


Link to post
Share on other sites

главный вопрос почему вот это

Включите показ ошибок. Может что-то еще покажет. Или обратитесь с службу поддержки

 

 

P.S. Тему читали - Переход с ipb 2.3.6 на ipb 3

 

Покажите лог ошибок SQL (SQL Error Logs).

+ полезно посмотреть ошибки PHP (могут быть) и настройки MySQL

Share this post


Link to post
Share on other sites

прошу прощения что не отвечал долгое время..

 

вобщем сделал я все заново в очередной раз. сконвертировал базу sxd, залил дистрибутив и проапгрейдился. теперь все нормально сконвертировалось - т.е. все кракозябрами) при выставлении utf в браузере - все становится нормально. но если прописать $INFO['sql_charset']='utf8'; то сразу ошибка. и второе - я только сейчас понял что посты то пустые, которые на русском были. просто пусто, те что на английском - сохранились.

 

вывод SHOW VARIABLES LIKE 'character_set%'

 

character_set_client utf8

character_set_connection utf8

character_set_database utf8

character_set_filesystem binary

character_set_results utf8

character_set_server cp1251

character_set_system utf8

character_sets_dir /usr/share/mysql/charsets/

 

логов SQL Error Logs нет

Edited by Alexander Alyokhin

Share this post


Link to post
Share on other sites

Кстати, у вас указана кодировка в .htaccess в корне форума?

AddDefaultCharset utf-8

Share this post


Link to post
Share on other sites

character_set_server cp1251

Совсем не есть хорошо.

 

логов SQL Error Logs нет

А просто ошибки PHP

Share this post


Link to post
Share on other sites

Кстати, у вас указана кодировка в .htaccess в корне форума?

AddDefaultCharset utf-8

 

указана.. все равно <meta http-equiv="content-type" content="text/html; charset=windows-1251" />

 

Совсем не есть хорошо.

 

вот у меня такое чувство что все изза этого. а как поправить честно говоря не знаю.

 

напомните где лежат логи ошибок php?)

 

и есть какие то мысли почему пропали посты на русском после конвертации/апгрейда?

Share this post


Link to post
Share on other sites

вот у меня такое чувство что все изза этого.

Не обязательно

 

а как поправить честно говоря не знаю.

Если у вас не сервер или VDS, то не как.

 

напомните где лежат логи ошибок php?)

А не где. Показ ошибок надо включать.

 

conf_global.php добавить в самый низ перед ?>

ini_set('display_errors', 1);

 

Или через .htaccess

php_flag display_errors On
php_value error_reporting 7

Share this post


Link to post
Share on other sites

все равно <meta http-equiv="content-type" content="text/html; charset=windows-1251" />

Ну это потому что у вас в conf_global не стоит utf-8.

 

Текст ошибки говорит «Данная ошибка связана с нарушением целостности кэша настроек системы. Это может быть результатом неудачного переноса базы данных». Я верю.

 

А текст ошибки ведет только сюда...

Edited by Ph-A
ссылка на сайт нарушающий законы РФ

Share this post


Link to post
Share on other sites

Ph-A, вывод включил, но вроде как чисто всё.

 

А текст ошибки ведет только сюда...

это намек как я понимаю? у меня не то что вы дали по ссылке.

 

ps. сейчас заметил в PhpMyAdmin что часть таблиц в utf8_general_ci, а часть в utf8_unicode_ci. до установки 3.2.3 точно знаю что все было utf8_general_ci

Share this post


Link to post
Share on other sites

Что-то я все невнимательно читаю ....

 

Текст ошибки говорит «Данная ошибка связана с нарушением целостности кэша настроек системы. Это может быть результатом неудачного переноса базы данных». Я верю.

Ссылка плохая, но мысль правильная. Правда ошибка выглядит так -

 

This issue is generally caused by changing your character set in the ACP to one that does not support data stored in the rest of your settings, or by restoring a database backup/completing a server transfer and importing your database tables using the wrong character set or collation.
You should contact <a href='http://invisionpower.com'>IPS Technical Support</a> for further assistance.

 

указана.. все равно

Пока не поправите, ошибка не уйдет.

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...