intent 0 04/20/07 13:13 Поставил форум, установил Руссификацию, прописал кодировку. И вместо русских слов вопросики!Вопрос: где в скрипте прописать кодировку для мусколы? Поделиться сообщением Ссылка на сообщение
Fisana 700 04/20/07 14:08 Если у Вас MySql 5, попробуйте поискать ответ здесь Пожалуйста, не забывайте писать версию форума, версию базы и прочего, о чем спрашиваете, в названии темы.Очень сложно быть телепатом. Поделиться сообщением Ссылка на сообщение
intent 0 04/24/07 13:56 2.2.2 версия.Тему прочёл, но не уловил куда именно сувать, можно поподробней если не сложно! Поделиться сообщением Ссылка на сообщение
Fisana 700 04/24/07 14:31 Я не имею опыта работы с MySql 5, да и 2.2.2 у меня только тестовые.Если не сложно, когда разберетесь, напишите решение.Этот форум о дизайне, тем не менее, очень много вопросов подобных вашему.Мы ответить на них можем далеко не всегда. Поделиться сообщением Ссылка на сообщение
andaril 4 04/24/07 15:12 Информация взята с ibrportal.net - в админке в общих настройках - настройка конфигурации - главные настройки: вместо iso-8859-1 указать windows-1251- создаем файл .htaccess и прописываем немAddDefaultCharset windows-1251- если нужно, то в файлах меняем <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" /> на<meta http-equiv="content-type" content="text/html; charset=windows-1251" />хотя для 22х мы этого ни разу не делали- можно в в конфиг MySQL добавить пару строк/etc/my.cnfРассмотрим пример конфига на основе MySQL 5.x. В раздел [mysqld] необходимо добавить следующее:default-character-set=cp1251 character-set-server=cp1251 collation-server=cp1251_general_ci init-connect="SET NAMES utf8" skip-character-set-client-handshakeДве последние строки принудительно устанавливают кодировку cp1251 для всех запросов. В раздел mysqldump достаточно добавить только default-character-set=cp1251- Вариант решения проблемы с кодировкой при переносе БД с более старых версий MySQL от 4.1:перед заливкой бэкапа MySQL со старого хостинга на новый в самом начале файла дампа добавляемSET collation_connection = cp1251_general_ci; SET collation_database = cp1251_general_ci; SET collation_server = cp1251_general_ci; SET character_set_client = cp1251; SET character_set_connection = cp1251; SET character_set_database = cp1251; SET character_set_results = cp1251; SET character_set_server = cp1251;заливаем на новый хостинг ищем файлы, которые отвечают за подключение к БД в Вашем скрипте и прописываем там в правильном оформленииSET NAMES utf8;, а именно:открыть \ips_kernel\class_db_mysql_client.php и \ips_kernel\class_db_mysqli_client.phpнайти:if ( ! mysql_select_db($this->obj['sql_database'], $this->connection_id) ) { $this->fatal_error(); return FALSE; }вставить после:mysql_query('SET NAMES utf8');открыть \sources\ipsclass.php и \installl\core\ipsclass.phpнайти:$this->DB->connect()вставить после:mysql_query('SET NAMES utf8');-на хостинге должна быть установлена русская локаль cp1251Попробуйте создайте пустой файл и в нем вставьте функцию:echo strtolower("ТеСТиРоВние");И посмотрите переведет регистр или нет.Если нет, то попробуйте так:setlocale(LC_CTYPE, 'ru_RU.CP1251'); echo strtolower("ТеСТиРоВние");Если и так не переведет, то пишите хостеру, чтобы в Вашей Unix-системе установил нужную локаль.- для нормального логина с русским ником и регистрации с ним надопроверить базу данных, а именно таблицы ibf_member_extra, ibf_members , ibf_members_converge,чтобы в них стояло кодировка cp1251_general_ciПопробуйте... Сам скоро буду думать над этой проблемой у себя на localhost'е... Как только дойду до нее распишу подробно как и что делать. Поделиться сообщением Ссылка на сообщение
Hottt 0 06/19/07 18:51 Люди!Проапгрэйдил форум до версии 2.3.0 и теперь у меня ??????????????? вместо текста, вариант, помогавший в версии 2.2.2: Заходим - \ips_kernel\class_db_mysql.phpНаходим: Кодif ( ! mysql_select_db($this->obj['sql_database'], $this->connection_id) ){$this->fatal_error();return FALSE;} Вставляем после: Кодmysql_query('SET NAMES utf8'); здесь не помогает! я знаю, это проблема с кодировкой базы данных, но как это исправить? может что-то прописать или выполнить какой-нибудь запрос к базе??? Поделиться сообщением Ссылка на сообщение
somehain 5 06/19/07 19:00 Если в базе данных еще данные в нормальном виде сохранились, то тогда используйте этот инструмент. Поделиться сообщением Ссылка на сообщение
Hottt 0 06/19/07 19:06 У меня нет шелла для экспорта-импорта базы, тем более для вмешательства в процесс... Поделиться сообщением Ссылка на сообщение
somehain 5 06/19/07 19:11 Запросы можно copy&paste в phpMyAdmin. p.s. верните копирайты на форуме в первозданный вид. Поделиться сообщением Ссылка на сообщение
Hottt 0 06/19/07 19:23 Перепробовал все запросы, что там указаны - ни 1 не помог, копирайты верну, не проблема. Поделиться сообщением Ссылка на сообщение
somehain 5 06/19/07 19:25 Все скопировали, все ПРАВИЛЬНО выполнилось, ни одной ошибки не произошло и ничего в итоге не изменилось? Ответ простой - в базе не осталось читабельных символов. Как решение - подымать бекап(ы). Поделиться сообщением Ссылка на сообщение
Hottt 0 06/19/07 19:34 Да, ошибок не было...Если мне завтра бэкап хостер поднимет - сегодняшний апгрэйд скрипта форума останется в силе или опять надо будет апгрэйдить и опять кодировка полетит. Поделиться сообщением Ссылка на сообщение
somehain 5 06/19/07 19:37 апгрэйдить и опять кодировка полетит. Из-за upgrade кодировка не летит :(Возможно чуть и летит, когда обновляем форум с русского на английкий, но это решается в 2 минуты, настройкой в "General Settings". Поделиться сообщением Ссылка на сообщение
Hottt 0 06/19/07 19:42 Я знаю, просто до апгрэйда файл class_db_mysql_client.php был другим вообще и тем более после того, как я туда прописал указанное выше (в версии 2,2,2 ранее тоже были проблемы), после апгрэйда файл стал другим и куда добавлять ту строку я вообще не знаю, соответственно форум опять в знаках ?????????? Я хотел бы знать, после бэкапа я смогу проапгрэйдиться или всё полетит снова? Поделиться сообщением Ссылка на сообщение
somehain 5 06/19/07 19:49 форум опять в знаках ?????????? Ну не может этого быть после обновления, если конечно в conf_global.php не затерялась строка: $INFO['mysql_codepage'] = 'latin1'; или cp1251, тогда все могло пойти не так как нужно. Вообще, перед обновлением необходимо делать бекап всех файлов, базы данных. При обновлении быть уверенным 100%-но, что кодировка апгрейтера соответствует кодировке базы данных + лучше всего использовать ручной режим обновления (молча копировать запросы в phpMyAdmin и нажимать 'Далее...'). Поделиться сообщением Ссылка на сообщение