Опубликовано: 16 января 201213 г Приветствую.Такая проблема, после обновления с 2.2.1 до 3.2.3 все русские буквы кракозябрами Как видно на скриншоте загадочным образом названия разделов и тем отображаются нормально. В исходном коде страницы прописано в мета charset=windows-1251. Когда прописываю в conf-global.php $INFO['sql_charset'] = 'utf8'; то в meta кодировка конечно же меняется на utf8 но картина следующая: таким образом форум работает только без строчки $INFO['sql_charset']. Изначально в conf-global.php строчки $INFO['mysql_codepage'] не было, я так понимаю она появилась в 2.3.х.Базу конвертировал скриптом от Ritsuka. Заранее большое спасибо за любую помощь. Изменено 16 января 201213 г пользователем Alexander Alyokhin
Опубликовано: 21 января 201213 г Автор какие то чудеса, ей Богу... только что в очередной раз все делал заново, решил попробовать не 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: Изменено 21 января 201213 г пользователем Alexander Alyokhin
Опубликовано: 21 января 201213 г кеш настроек либо пуст, либо испорченНу опять он про кэш настроек. Вы вообще кэш перестраивали?
Опубликовано: 21 января 201213 г Автор Ну опять он про кэш настроек. Вы вообще кэш перестраивали? наощупь добрался до этого пункта - перестроил. ошибка осталась. честно говоря мне непонятно как может ипб работать если текст на самом деле в cp1251. и при этом в пхпмайадмин - ютф и текст читается. коллапс.честно говоря не знаю что делать уже) может есть смысл обновиться сначала на промежуточную версию какую то до 3.х? Изменено 21 января 201213 г пользователем Alexander Alyokhin
Опубликовано: 21 января 201213 г но теперь если выставить в браузере 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 ); }
Опубликовано: 22 января 201213 г Автор Это говорит о том, что данные в таблице не конвертируются в 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
Опубликовано: 22 января 201213 г Автор возьму на себя смелость спросить если ли еще какие нибудь предположения или можно забить на это дело?)
Опубликовано: 22 января 201213 г Если php от sql не отличаете, не знаю что еще тут можно посоветовать.
Опубликовано: 22 января 201213 г Автор Если php от sql не отличаете, не знаю что еще тут можно посоветовать. знаний php и sql мне действительно катастрофически не хватает. теперь буду знать что все это необходимо знать, для того чтобы обновить форум. но спасибо что постебались, да и за участие тоже спасибо. Изменено 22 января 201213 г пользователем Alexander Alyokhin
Опубликовано: 30 января 201213 г постебалисьПросто сложно помочь человеку без минимальных знаний по теме, не сделав всё за него. Ищите профессионала, пусть настроит.
Опубликовано: 1 февраля 201213 г Автор Просто сложно помочь человеку без минимальных знаний по теме, не сделав всё за него. Ищите профессионала, пусть настроит. знания есть более чем минимальные, то что я запарился это не повод брызгать желчью тут) ну и из того что я писал здесь можно сделать поверхностный вывод об уровне знаний. скрипт я сам не напишу с нуля, но чтобы обновить форум того что я знаю достаточно. просто ситуация мягко говоря нестандартная. Изменено 1 февраля 201213 г пользователем Alexander Alyokhin
Опубликовано: 2 февраля 201213 г то что я запарился это не повод брызгать желчью тутНикто не брызгает, я пытаюсь сказать, что смотреть на это всё надо лично своими глазами и делать своими руками. Через форум тут вряд ли разберешься.
Опубликовано: 2 февраля 201213 г Автор Никто не брызгает, я пытаюсь сказать, что смотреть на это всё надо лично своими глазами и делать своими руками. Через форум тут вряд ли разберешься. это было не в ваш адрес :)пардон. а то что своими руками возможно так и есть, уж очень как то все тяжко получается. сегодня один человек сказал что дамп сам в ютф снимается изначально, хотя кодировка то 1251 естественно.. возможно в этом проблема? но я правда сколько раз пробовал через sxd конвертировать, т.е. я не скармливал дамп который сам снимал майадмином.. уж он то я думаю нормально работать должен. вобщем ситуация крайне непонятная мне. Изменено 2 февраля 201213 г пользователем Alexander Alyokhin
Опубликовано: 7 февраля 201213 г Сам долго мучался с кодировками и конвертациями, но все решилось очень просто, указание на один неочевидный момент нашел на этом форуме.Последовательность действий была такова:1. Конвертация базы с помощью скрипта от ritsuka2. Изменение conf_global.php (добавление $INFO['sql_charset']= 'utf8'; удаление 1251)3. Обновление форума по инструкции. Основная тонкость которая попортила мне кучу нервов это то что пункт 2 нужно выполнять ОБЯЗАТЕЛЬНО ДО обновления, иначе проблемы с кодировкой
Опубликовано: 7 февраля 201213 г Автор Kapralez, спасибо за ответ. Только что повторил все действия. Но все равно в мета - charset=windows-1251, и браузер выбирает ее естественно автоматом. В conf_global $INFO['sql_charset']='utf8'. Если ручками выставить юникод - все ок
Приветствую.
Такая проблема, после обновления с 2.2.1 до 3.2.3 все русские буквы кракозябрами
Как видно на скриншоте загадочным образом названия разделов и тем отображаются нормально.
В исходном коде страницы прописано в мета charset=windows-1251. Когда прописываю в conf-global.php
то в meta кодировка конечно же меняется на utf8 но картина следующая:
таким образом форум работает только без строчки
. Изначально в conf-global.php строчки
не было, я так понимаю она появилась в 2.3.х.
Базу конвертировал скриптом от Ritsuka.
Заранее большое спасибо за любую помощь.
Изменено пользователем Alexander Alyokhin