Перейти к публикации
Дизайн и модификация IPS Community IPBSkinsBETA
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
Alexander Alyokhin

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

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

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

Объявление кодировки в мета-теге никак не влияет на работу форума. Влияет только на отображение символов в браузере.

А вот разные collation лучше исправить.

Поделиться сообщением


Ссылка на сообщение
01/21/12 19:17 (изменено)

какие то чудеса, ей Богу... только что в очередной раз все делал заново, решил попробовать не 3.2.3 а 3.1.2. сконвертил базу, теперь все отлично 100% - все таблицы после апгрейда utf8_general_ci, посты сохранились на русском, все ок. захожу на форум - ромбики. но теперь если выставить в браузере cp1251 то все буквы становятся видны. честно говоря я в смятении.

 

второе - если вписать в conf_global

 

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

 

вылазит ошибка Fatal error: Uncaught exception 'Exception' with message 'Не удалось инициализировать регистр, кеш настроек либо пуст, либо испорчен'

в файле ipsRegistry.php on line 1858

 

:blink:

Изменено пользователем Alexander Alyokhin

Поделиться сообщением


Ссылка на сообщение

кеш настроек либо пуст, либо испорчен

Ну опять он про кэш настроек. Вы вообще кэш перестраивали?

Поделиться сообщением


Ссылка на сообщение

Влияет только на отображение символов в браузере.

О чем речь.

Поделиться сообщением


Ссылка на сообщение
01/21/12 20:19 (изменено)

Ну опять он про кэш настроек. Вы вообще кэш перестраивали?

 

наощупь добрался до этого пункта - перестроил. ошибка осталась. честно говоря мне непонятно как может ипб работать если текст на самом деле в cp1251. и при этом в пхпмайадмин - ютф и текст читается. коллапс.

честно говоря не знаю что делать уже) может есть смысл обновиться сначала на промежуточную версию какую то до 3.х?

Изменено пользователем Alexander Alyokhin

Поделиться сообщением


Ссылка на сообщение

но теперь если выставить в браузере cp1251 то все буквы становятся видны

Это говорит о том, что данные в таблице не конвертируются в utf-8. Читаемость в phpmyadmin-е не показатель. Проверьте сначала на простом скрипте, укажите явно кодировку через SET NAMES, и в htaccess добавьте тоже AddDefaultCharset

 

mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER SET 'utf8'");
mysql_query("SET character_set_connection = utf8");
mysql_query("SET collation_connection = utf8_general_ci");

$res = mysql_query('SELECT * FROM ibf_posts LIMIT 1');
while( $row = mysql_fetch_assoc( $res ) )
{
  print_r( $row );
}

Поделиться сообщением


Ссылка на сообщение

Это говорит о том, что данные в таблице не конвертируются в utf-8. Читаемость в phpmyadmin-е не показатель. Проверьте сначала на простом скрипте, укажите явно кодировку через SET NAMES, и в htaccess добавьте тоже AddDefaultCharset

 

mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER SET 'utf8'");
mysql_query("SET character_set_connection = utf8");
mysql_query("SET collation_connection = utf8_general_ci");

$res = mysql_query('SELECT * FROM ibf_posts LIMIT 1');
while( $row = mysql_fetch_assoc( $res ) )
{
  print_r( $row );
}

 

MySQL said: Documentation
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'mysql_query("SET NAMES 'utf8'")' at line 1 

Поделиться сообщением


Ссылка на сообщение

возьму на себя смелость спросить если ли еще какие нибудь предположения или можно забить на это дело?)

Поделиться сообщением


Ссылка на сообщение

Если php от sql не отличаете, не знаю что еще тут можно посоветовать.

Поделиться сообщением


Ссылка на сообщение
01/22/12 22:28 (изменено)

Если php от sql не отличаете, не знаю что еще тут можно посоветовать.

 

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

Изменено пользователем Alexander Alyokhin

Поделиться сообщением


Ссылка на сообщение

постебались

Просто сложно помочь человеку без минимальных знаний по теме, не сделав всё за него. Ищите профессионала, пусть настроит.

Поделиться сообщением


Ссылка на сообщение
02/01/12 15:02 (изменено)

Просто сложно помочь человеку без минимальных знаний по теме, не сделав всё за него. Ищите профессионала, пусть настроит.

 

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

Изменено пользователем Alexander Alyokhin

Поделиться сообщением


Ссылка на сообщение

то что я запарился это не повод брызгать желчью тут

Никто не брызгает, я пытаюсь сказать, что смотреть на это всё надо лично своими глазами и делать своими руками. Через форум тут вряд ли разберешься.

Поделиться сообщением


Ссылка на сообщение
02/02/12 17:47 (изменено)

Никто не брызгает, я пытаюсь сказать, что смотреть на это всё надо лично своими глазами и делать своими руками. Через форум тут вряд ли разберешься.

 

это было не в ваш адрес :)пардон. а то что своими руками возможно так и есть, уж очень как то все тяжко получается. сегодня один человек сказал что дамп сам в ютф снимается изначально, хотя кодировка то 1251 естественно.. возможно в этом проблема? но я правда сколько раз пробовал через sxd конвертировать, т.е. я не скармливал дамп который сам снимал майадмином.. уж он то я думаю нормально работать должен. вобщем ситуация крайне непонятная мне.

Изменено пользователем Alexander Alyokhin

Поделиться сообщением


Ссылка на сообщение

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

Последовательность действий была такова:

1. Конвертация базы с помощью скрипта от ritsuka

2. Изменение conf_global.php (добавление $INFO['sql_charset']= 'utf8'; удаление 1251)

3. Обновление форума по инструкции.

 

Основная тонкость которая попортила мне кучу нервов это то что пункт 2 нужно выполнять ОБЯЗАТЕЛЬНО ДО обновления, иначе проблемы с кодировкой

Поделиться сообщением


Ссылка на сообщение

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

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Сейчас на странице   0 пользователей

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

×
×
  • Создать...