При Преобразовании базы данных и данных в UTF-8 возникли проблемы.

Автор talalaev, 22 мая 2010, 01:09:26

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

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

talalaev

Приветствую, у меня  SMF 2.0 RC1
Форум находится здесь  http://patrolclub.com/


нужна помощь. Помогите пожалуйста.

Не подумав на своем форуме нажал вот это:

Преобразовать базу данных и данные в UTF-8

UTF-8 является международной кодировкой охватывающая практически все языки мира. Преобразование Вашей базы данных и данных в UTF-8 может облегчить поддержку многоязычности Вашего форума. Это также может улучшить поиск и способность сортировки для языков с нелатинскими знаками.


Появились непонятные символы, можно ли обратно вернуть?

если да, то как?

karavan

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

$db_error_send = 1;  (у меня она была 49) добавляешь энтером ещё одну строку в которую вписываешь, или копируешь следующее:
$db_character_set = 'cp1251';

сохраняешь, закрываешь и будет тебе счастье. Может быть.

talalaev

спасибо, но не помогло. (((

кстатиту меня там было не $db_error_send = 1;, а $db_error_send = 0;

talalaev

В общем буду ждать помощи :) если кто откликнется конечно  :-[


talalaev

$db_character_set = 'utf8'; добавил

А локализацию не знаю как сделать.

Макар

Цитата: talalaev от 22 мая 2010, 16:03:51
$db_character_set = 'utf8'; добавил

А локализацию не знаю как сделать.

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

talalaev


Макар

Продолжим.
Скинул себе дамп БД talalaevа (основной на хостинге еще не трогал) работаю с ним локально на своей машине.

Суть вот в чем. База данных и форум talalaevа все в utf8
база в утф
таблицы в утф
генеральное сравнение в утф
в сеттингс строка $db_character_set = 'utf8'; присутствует
локализация залита утф
новые сообщение в базу записываются в утф

короче все в утф и все работает

осталлось одно но! старые сообщения все в кракозяблах, внутри БД в таблицах текст не читаем,  типа - Re: ñà ëüГГЁГЄ øêâîðíåâîãî ïîäø... и нотепад ++ и PsPad отказывается их понимать

массовое или частичное конвертирование к читаемости не приводит
во шо оно блин переконвертировалось не понятно (пробовал даже Штирлицем) кодирование и декодирование меняет набор кракозябл но не приводит к читаемости текста.

В базе 328 Сообщений в 112 Тем в категриях и разделах и все (кроме новых создаваемых) не читаемо.

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

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

0daliska

Цитата: Makar от 25 мая 2010, 11:46:55
Продолжим.
.........
массовое или частичное конвертирование к читаемости не приводит
во шо оно блин переконвертировалось не понятно (пробовал даже Штирлицем) кодирование и декодирование меняет набор кракозябл но не приводит к читаемости текста.

В базе 328 Сообщений в 112 Тем в категриях и разделах и все (кроме новых создаваемых) не читаемо.

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

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

Mavn

дайте с бд покавырятся лучше в исходном виде. возможно вылечу ...
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

Макар

не помогает
невозможно расшифровать кусок текста из поля body в любой из таблиц где присутствуют кракозяблы

если кто сможет расшифровать для примера описание раздела

ЦитироватьÀäìèГèñòðà öèÿ Ïà òðîë êëóáà ГЁ ñòðà õîâîå Г ГЈГҐГГІГ±ГІГўГ® ГЋГЋГЋ "Ïà ëëà äèóì-ïîëèñ "ñîîáùà þò Г® çà ïóñêå Гîâîé ïà ðòГåðñêîé ïðîãðà ììû, Гў ðà ìêà õ êîòîðîé ГўГ±ГҐ ÷ëåГГ» êëóáà ïîëó÷à þò ñêèäêè ГГ  à âòîñòðà õîâà ГГЁГҐ.

напишите как и чем

Цитата: Mavn от 25 мая 2010, 14:35:36
дайте с бд покавырятся лучше в исходном виде. возможно вылечу ...

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

Mavn

Цитата: Makar от 25 мая 2010, 14:57:00
если talalaev разрешит я скину дамп , без разрешения не дам
ну так вопрос больше к нему относится чем к тебе :) итак понятно что без разрешения хозяина ничего не получу  ;D

SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

talalaev


Макар

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

talalaev


Макар

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

talalaev


talalaev


Макар

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

talalaev


Mavn

Извиняюсь что не отвечаю меня к сожалению не было долгое время а в командировке решать проблему не было времени если все еще актуально то постараемся глянуть на неделе
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.


Mavn

Кстати говоря первоначальная кодировка бд какая была? у вас текущая бд такая кривая как дамп? Можно доступ к текущей бд а то с файликом как то не особо получается преобразование сделать
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

Mavn

дамп переделал отправил на мыло инструкции по редактированию см в письме.

документацию написать чтоли по исправлению кривых дампов а то уже второй человек за 2 месяца. Такая же проблема была у Awilum на паскальгеймс.
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

Макар

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

talalaev

Огромное спасибо )))) Благодарю от сердца ))

Проблема решена ))

Mavn

Цитата: Makar от 09 июня 2010, 15:51:36
Ага надо. Ты, я так понимаю через преобразование в самом майадмине делал ?
нет майадмин использовал только для анализа данных и просмотра бд, основная работа это прогон бд по нескольким кодировкам.
Вообще как бы такая проблема с кодировкой бд случается по простой причине:
1. Изначально кодировка бд отличается от кодировки данных(например кодировка бд latin1 кодировка форума win1251, что пишется в бд в таком случае я думаю рассказывать не нужно)
2. При конвертации пользователь выбирает не ту кодировку в которой у него эти самые данные в результате и получается такая ошибка, что все данные не пойми в какой кодировке. Т.е. например кодировка бд latin1 и пользователь по идее должен выбирать кодировку при конвертировании данных в UTF8 - ISO кодировку данных, но народ же не читает документацию о том что кодировку бд нужно выставлять при установке и делает все как папало. При конвертировании происходит следущее у тебя одни кракозябли становятся другими кракозяблями которые ты вообще никак ничем не декодируешь.

Для пущего понимания возьми число 1 зашифруй его в md5 а потом полученный md5 хэш еще раз зашифруй. А теперь попробуй сразу получи 1 из хэша хэша md5, никогда 1 ты не получишь. Тебе нужно будет сначала разшифровать md5 хэша а потом расшифровать сам хэш чтобы получить 1. Вот и здесь тоже самое


Это в общем и есть методика лечения, я всего лишь в обратном порядке прогоняю данные.
Есть конечно небольшой недостаток, Некоторые буквы например Большие буквы И Ш и еще какие то неправильно распознаются и сохраняются в виде двух ?? вопросительных знаков

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

используемые материалы
dumper
notepad ++
mysql для хранения данных

никаких штирлицев и прочих перекодировщиков не требуется.
Время исполнения 5-15 минут

Цитата: talalaev от 09 июня 2010, 16:40:45
Огромное спасибо )))) Благодарю от сердца ))

Проблема решена ))

да пожалуйста :)
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

Макар

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

Mavn

ты чем их кодировал ??
потому как там не кодировать нужно а именно с бд работать
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

Чеширский кот

Цитата: Mavn от 09 июня 2010, 20:13:48
ты чем их кодировал ??
потому как там не кодировать нужно а именно с бд работать

Есть вопрос по этому поводу: На какую кодировку менять в notepad++  у меня почему то win  формат неактивный, а другие кодировки толку не дают (все равно ерунда какая то).
форум для общения людей среднего возраста www.sandoor.ru/forum/

Mavn

дамп бд преобразовывается только utf8<<==>>Ansi ничего более все остальные махинации проводятся непосредственно с мускулом.
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

sonyer

Точно такая же проблема 1 в 1. Но я все же не понял как ее решить(Может кто-то помочь?предоставлю все данные и все прочее, пожалуйста)

GeorG

Тут не так все просто, вам уже дали ответы через которые, вы можете  всё проделать. Если не получается, то задавайте уточняющие вопросы (и чем точнее, тем вам лучше), или сюда - http://www.simplemachines.ru/index.php?board=41.0 (там все решится, быстро, и без лишних заморочек).
Верстка тем по шаблону, их доработка/переработка, переделка тем с версии smf 1.1 на smf 2.0. Примеры работ - insidestyle.ru
Установка модов (заточка под ваш форум); Моды под заказ; Обновление форума; Правильный перенос; Удаление/лечение вирусов; Устранения ошибок.
Обращаться в ЛС
Мой форум
Модуль анти-спама CleanTalk, сам пользуюсь
Сервера которыми сам пользуюсь - cadedic.ru

sonyer

Ну вот допустим у меня есть дамп форума до того как я нажал кнопку преобразовать в УТФ-8, и что же мне с ним делать?Открыл этот дамп в нотепад, поменял кодировку на АНСИ и такие же иероглифы остались, новые сообщения и темы нормально отображаются а вот старые все в ироглифах

Mavn

там много действий нужно провести чтобы восстановить читаемый вид и если вы не обладаете необходимыми навыками то ничего сами не сделаете именно поэтому я не выкладываю весь путь ибо он индивидуален для каждого дампа
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.