Правильная кодировка при установке

Автор GadZZillA, 20 марта 2012, 01:31:16

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

GadZZillA

Я решил устанавливать форум в кодировке UTF-8. Но я так понял, что по умолчанию не рекомендуется выбирать этот вариант. Собственно по этому поводу возник ряд вопросов.

1) Теперь получается, что русификатор необходимо полностью перекодировать, иначе он работать не будет, верно?

2) Как быть с использованием модов? Их тоже прийдется перекодировать для совместимости?

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

Заранее спасибо.

digger®

Форум устанавливается в кодировке UTF-8, потом в админке в разделе языков устанавливается русификатор UTF-8. Ничего перекодировать не надо.

GadZZillA

Но файлы русификатора имеют кодировку ANSI. Разве не должно быть проблем?


Макар

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

все
Если Вы здесь недавно, не обольщайтесь тоном некоторых дискуссий.
Все чаще слова - юзай поиск, приобретают смысл - иди в ж..........  Приобретение смысла автоматизированно - Ответы на любой вопрос по SMF
Не пишите несколько сообщений подряд - тут вам не Twitter  >:( в остальных ситуациях мы не сильно зверствуем 2funny

plintus

Люди а в какой кодировке лучше делать базу данных и как перекодировать полностью уже созданную чтоб всё читалось? При создании базы просто не подумал
Надёжный хостинг - быстрее быстрого на SSD-дисках от 120 руб/мес  с доменом в подарок Промо-код на скидку в 10%: Skid10

savirmir

Цитата: Макар от 21 марта 2012, 15:03:32
качаешь установочный пакет форума
ставишь без русификации
при установке  ставишь галочку - использовать утф
в базе данных при этом выставить в опциях генеральное сравнение утф
после установки в админке - язык - добавить - найти вбиваешь ru
форум находит два пакета, выбираешь тот что в утф
установить

все

Сделал по этой инструкции + Инструкция по Переезду с 1.1.14 на 2.0. Перешёл с 1.1.10 на 2.0.2 (всё руки до того не доходили).

Добавил в Settings.php строчки:

$language = 'russian-utf8';
$db_character_set = 'utf8';
$txt['lang_character_set'] = 'UTF-8';


Повозился несколько часов и...  В результате получил удивительную вещь: в IE 9.0 всё нормально видно (только исправил название форума в Админке), в FF 11.0 получаю полную ерунду, он воспринимает все страницы как ISO-8859-1... Если кодировку исправляешь в FF вручную на UTF-8, получаются чудеса в решете: текст топиков, их заголовки видны нормально, но все кнопки остаются на инглише + вся админка также на инглише! Стоит только в FF сменить страничку, как опять слетает кодировка...

Читал этот форум часов 7, пытался что-то найти... wallbash Бесполезно!

Подскажите умную мысль, что надо сделать? Ранее мой форум был в кодировке CP1251, собственно говоря, в БД он так и остался (я, честно говоря, думал, что Двойка БД преобразует...).

Пока у меня есть два соображения:

1) Найти и исправить кодировку ISO-8859-1, вот только в тех местах (файлах) где я её находил, это не помогает.

2) Откатиться на 1.16...

Прошу помощи!  :facepalm:

P.S. Да, тему установил дефолтную, пробовал ещё сверху закачать руссификацию, ничего не помогает...

digger®

Цитата: savirmir от 02 апреля 2012, 22:23:33Подскажите умную мысль, что надо сделать? Ранее мой форум был в кодировке CP1251, собственно говоря, в БД он так и остался (я, честно говоря, думал, что Двойка БД преобразует...).
Для преобразования в UTF8 есть специальный пункт в админке. Само ничего не преобразуется.
Потом сменить русификатор на utf8.

savirmir

Цитата: digger от 02 апреля 2012, 22:34:39
Для преобразования в UTF8 есть специальный пункт в админке. Само ничего не преобразуется.
Потом сменить русификатор на utf8.

Я... просто испугался его использовать... В версиях 1.X была масса примеров, когда его нажимали и... получали полностью неработоспособную БД! Я и сейчас тут на форуме начитался таких страшных случаев... :(
Но, если вы говорите, что можно (а вашим суждениям я тут вполне доверяю), рискну!

GeorG

Цитата: savirmir от 02 апреля 2012, 22:42:04получали полностью неработоспособную БД
У вас должен быть бэкап на такой случай.

Цитата: savirmir от 02 апреля 2012, 22:23:33пробовал ещё сверху закачать руссификацию, ничего не помогает...
Вы случайно её не через фтп просто закачиваете поверх? А то были тут такие юмористы...
Верстка тем по шаблону, их доработка/переработка, переделка тем с версии smf 1.1 на smf 2.0. Примеры работ - insidestyle.ru
Установка модов (заточка под ваш форум); Моды под заказ; Обновление форума; Правильный перенос; Удаление/лечение вирусов; Устранения ошибок.
Обращаться в ЛС
Мой форум
Модуль анти-спама CleanTalk, сам пользуюсь
Сервера которыми сам пользуюсь - cadedic.ru

chilly86

Цитата: savirmir от 02 апреля 2012, 22:42:04
В версиях 1.X была масса примеров, когда его нажимали и... получали полностью неработоспособную БД!

бекапы наше фсьо!
to live is to die

savirmir

Цитата: GeorG от 02 апреля 2012, 22:55:41
У вас должен быть бэкап на такой случай.
Вы случайно её не через фтп просто закачиваете поверх? А то были тут такие юмористы...


Да, естественно, есть у меня бэкапы...

А что? Через FTP... Разницы, кстати никакой не заметил... Это уже после установки через админку языка. В чём здесь юмор?
Когда ничего не помогает, пытаешься использовать бубны...

savirmir

Цитата: digger от 02 апреля 2012, 22:34:39
Для преобразования в UTF8 есть специальный пункт в админке. Само ничего не преобразуется.
Потом сменить русификатор на utf8.

Да уж... Вот это точно была не шутка?!

Преобразовал... :(
Админка осталась... Все топики исчезли, БД осталась в кодировке CP1251...

Прикольно, аж плакать хочется...
Ну вот верну я "правильные" таблицы (CP1251), а дальше? Я с FF привык работать, да и пользователи многие...
Эх, видать не судьба мне с двойкой пока работать...

Советов не дают... Времени потрачено - вагон... Жаль...

maestrosite.ru

Если база в 1251, то и укажите эту кодировку для базы. Отображение страницы - посмотрите какие заголовки отдаёт сервер. Иногда на хостинге принудительно ставится кодировка. Скорее всего у вас принудительно ставится 1251, так как ранее форум был в этой кодировке и конфликтов не было. Сейчас же возможен конфликт: 1251 - сервер, utf8 - форум

upd админка же осталась (по-русски?) так как она из файлов читается, а сообщения, темы и разделы - из базы
Если задаются вопросы по вашей проблеме, значит это нужно вам!
---
Обновления форума, разрешение конфликтов, адаптация модов, исправление ошибок - ваши предложения о сотрудничестве направляйте по адресу smf@maestrosite.ru

savirmir

Цитата: maestrosite.ru от 03 апреля 2012, 00:15:20
Если база в 1251, то и укажите эту кодировку для базы. Отображение страницы - посмотрите какие заголовки отдаёт сервер. Иногда на хостинге принудительно ставится кодировка. Скорее всего у вас принудительно ставится 1251, так как ранее форум был в этой кодировке и конфликтов не было. Сейчас же возможен конфликт: 1251 - сервер, utf8 - форум

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


Самое интересное, что если я для БД пытался указать 1251 кодировку, топики снова отображались кракозяблями, в том числе и в IE...
В общем, совершенно непонятная ситуация...
Насчёт конфликта... Хм... посмотрю ещё раз, завтра попробую спросить хостёра...

maestrosite.ru

Цитата: savirmir от 03 апреля 2012, 00:25:11

Самое интересное, что если я для БД пытался указать 1251 кодировку, топики снова отображались кракозяблями, в том числе и в IE...
В общем, совершенно непонятная ситуация...
Насчёт конфликта... Хм... посмотрю ещё раз, завтра попробую спросить хостёра...

HTTP-заголовки посмотрите в Firebugе, например. И есть ли в .htaccess упоминания 1251
Если задаются вопросы по вашей проблеме, значит это нужно вам!
---
Обновления форума, разрешение конфликтов, адаптация модов, исправление ошибок - ваши предложения о сотрудничестве направляйте по адресу smf@maestrosite.ru

savirmir

#16
Цитата: maestrosite.ru от 03 апреля 2012, 00:30:41
HTTP-заголовки посмотрите в Firebugе, например. И есть ли в .htaccess упоминания 1251

Да  с заголовков я и начинал - неправильная кодировка и т.п. В  .htaccess кодировки вообще не упоминаются...
Что заметил, после "конвертации" FF увидел в заголовках UT-8, но вот топики по прежнему не видит...

P.S. Тьфу, я во всём разобрался!
Как обычно - не надо быть слишком мудрыми...

Всё просто: надо производить установку из любого малоиспользуемого браузера! Я установил Хром... Всё дело в кэше, пока он не обнулиться, а это может занять приличное время, вы будете видеть кракозябли!
После полной установки, настройки русского языка  и добавления строк про UTF8 в Settings.php просто запускаем другой браузер и всё!
Думаю, что многие жалобы на кракозяблы связаны как раз с этим! По-крайней мере, FF на актуальном компе, а также теперь уже Хром всё кажут бред при обновлении. Это при том, что кэш в FF я полностью отключил...

Пробный запуск FF и IE на другом компе легко подтвердил эти предположения: с русским языком всё нормально.

И по-прежнему не советую использовать опцию преобразования UTF8 в админке форума 2.

chilly86

откройте для себя Ctrl+F5 на мозилле  angel
to live is to die

savirmir

Цитата: chilly86 от 03 апреля 2012, 08:22:12
откройте для себя Ctrl+F5 на мозилле  angel
Не помогало ничего!
Только часа через 4-5 форум приобрёл на FF нормальный вид...

waltmeister

Я задам возможно, старый вопрос, но все же....
Надо поставить форум в utf8 с 0.
И тут у меня возникает неприятность.


SHOW VARIABLES
Цитировать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/local/share/mysql/charsets/
collation_connection    utf8_general_ci
collation_database    utf8_general_ci
collation_server    cp1251_general_ci


Хостингер отказывается изменить ini файл. А у меня с некоторых пор проблемы кодировки вызывают приступы икоты.
Чем это полечить так, чтоб не возникло в будущем проблем? При обновлении или там при restore backup ?

0daliska

#20
.htaccess
AddDefaultCharset utf-8

Ну и при создании таблиц задайте сразу кодировку utf-8

А что, уже возникали проблемы с такими настройками?

Вот вам от одного из моих хостеров данные:
character set client    utf8
(Глобальное значение)    cp1251
character set connection    utf8
(Глобальное значение)    cp1251
character set database    cp1251
character set filesystem    binary
character set results    utf8
(Глобальное значение)    cp1251
character set server    cp1251
character set system    utf8
character sets dir    /usr/local/share/mysql/charsets/
collation connection    utf8_unicode_ci
(Глобальное значение)    cp1251_general_ci
collation database    cp1251_general_ci
collation server    cp1251_general_ci

и ничего, форум и БД в UTF8 работают замечательно (там ставилась SMF1.1.11 и далее были апгрейды до текущей SMF1.1.16), правда htaccess с заданной по умолчанию кодировкой использую (см.начало), плюс в Settings.php указывается кодировка для соединения с БД $db_character_set = 'utf-8';

Для бэкапов используйте SympexDumper - удобно и хорошо работает с кодировками... Хотя и через phpMy Admin проблем быть не должно, если таблица с данными в одной кодировке...
Уехала отдыхать. Сейчас без интернета до 1 августа. Приеду - выполню все обещания
® For members of Russian community (simplemachines.ru) only

waltmeister

Цитата: 0daliska от 22 апреля 2012, 23:37:41.htaccessAddDefaultCharset utf-8
А это обязательное условие? Я уже видел этот метод, (как, впрочем, и кучу других) но что-то боюсь им пользоваться.

да, возникали.

0daliska

я подозреваю, что если у вас есть проблемы с кодировками, то тут не только в соединении с БД проблемы. проблема в том еще, что и апач у вас устанавливает кодировку windows-1251
так что пробуйте...
А что бояться? Скачайте имеющийся у вас файл htacess Сделайте его копию, в которую внесете нужные изменения, и залейте исправленную копию на хостинг...
Если файла htaccess не было в корневой папке форума, то создайте при помощи notepad++ и впишите необходимое...
Самый плохой вариант - это на минуту или на две сервер выдаст 500 ошибку.
Если такое случится (500 ошибка) - значит либо неправильно прописали, либо не можете это делать по настройкам сервера... Замените файл обратно на исходный (если он был), либо удалите тот, что создали... А затем стучитесь к хостеру, он подскажет...
Делов на пару минут

Проблемы были - при создании дампа БД или при заливке дампа?
Честно, у меня была однажды ошибка, когда мне хостер восстанавливал из своего дампа БД, я была в шоке, как так можно испоганить нормальную БД... Залила из сделанного мною дампа и все снова отлично... Учитывайте кодировки, когда создаете дамп и когда заливаете... Хостер делал дамп не глядя на то, в какой он кодировке, и заливал также... В результате были сплошные кракозябры... Специально не получится даже такое воспроизвести...
Но если в работе форума нет проблем, то чего мешать работать тому, что и так работает?
Уехала отдыхать. Сейчас без интернета до 1 августа. Приеду - выполню все обещания
® For members of Russian community (simplemachines.ru) only

motosimak

Народ, подскажите такую вещь:
1. Поставил новый форум 2.0.2 + локализацию utf8
2. Создал  базу данных в UTF-8
3. Установил форум через install.php
Но форум не отображается как положено, шаблона нет.  Как это можно исправить? где копать? Если добавить $db_character_set = 'utf-8' в settings.php  то появляются частично крякозябры..., уже по разному ставил фоурм, может где не доглядел,  вообщем прошу помощи...

Форум здесь : http://knowpc.ru/forum/index.php

maestrosite.ru

Цитата: motosimak от 29 мая 2012, 09:43:30
Форум здесь : http://knowpc.ru/forum/index.php
Адрес тем оформления исправьте. У вас 127.0.0.1 указан, да и имя папки с локального перенесли. В общем repair_settings вам в помощь
Если задаются вопросы по вашей проблеме, значит это нужно вам!
---
Обновления форума, разрешение конфликтов, адаптация модов, исправление ошибок - ваши предложения о сотрудничестве направляйте по адресу smf@maestrosite.ru

KaMaToZnIk

после установки форума вылезли крякозябры, при установке поставил галочку на utf8, http://ktzh.p.ht/index.php , через админку преобразовать не получается, т.к. не могу прочитать, подскажите как сделать?

motosimak

KaMaToZnIk, помимо форума, база должна быть тоже в кодировке, что и форум.
Я у себя проблему решил так: http://knowpc.ru/programmirovanie/kak-izmenit-kodirovku-bazy-dannyh-v-mysql/

KeSSLeR

Всем доброго времени суток. Проблема в следующем. При установке форума выбрал "не использовать кодировку utf8".
Форум установился, скачал русский язык. Русификация установилась, но когда пробую писать сообщения на русском - вылазают кракозябры :(
Не охота использовать utf8, так как на движке сайта стоит cp1251.
Вот форум - http://www.avtokanal61.ru/forum/index.php

digger®

Цитата: KeSSLeR от 07 сентября 2013, 17:26:42
Всем доброго времени суток. Проблема в следующем. При установке форума выбрал "не использовать кодировку utf8".
Форум установился, скачал русский язык. Русификация установилась, но когда пробую писать сообщения на русском - вылазают кракозябры :(
Не охота использовать utf8, так как на движке сайта стоит cp1251.
Вот форум - http://www.avtokanal61.ru/forum/index.php
В Settings.php добавить строку
$db_character_set = 'cp1251';