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

Автор sasha_yakunin, 22 августа 2007, 13:58:58

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

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

sasha_yakunin

Админка -> Обслуживание форума -> Преобразование базы данных и данные в UTF-8

Чисто случайно выполнил данное преобразование.
Теперь имею:

Белый форум (хотя некоторые русские слова таки отображаються)
И сл. настройки:

Кодировка данных:    windows-1251
Кодировка базы данных:    UTF-8
Преобразовать данные и базу данных в:    UTF-8

Подозреваю, что для корректного отображения русского надо скачать языковой пакет для rus UTF-8 что и сделал. А вот как его подключить и вообще правильное ли это решение хотелось бы узнать у спецов.

Mavn

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

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

sasha_yakunin

Решил что будет лучше перевести базу обратно в cp1251.
Сделал дамп БД, и переписал TYPE каждой smf таблицы соответственно <a href="http://www.simplemachines.ru/index.php/topic,1376.0.html">этой</a> статье.

В таблице smf_settings случайно попалось на глаза
global_character_set', 'UTF-8' - этот параметр менять не надо?

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


sasha_yakunin

Цитата: Mavn от 23 августа 2007, 10:11:23
Русификатор для UTF8 поставь

тык russian_utf я залил себе Themes/default/lenguages
а как теперь его подключить?

Alessandro

У меня та же проблема. Сделал преобразование в UTF8, после этого вместо форума было чистая девственно белая страница. Скопировал  russian_utf в Themes/default/languages, после этого форум открылся, но интерфейса нету. Т.е. все сообщения типа "администирирование" "новая тема" все пустые.

Fedaykin

Другая проблема.... Сделал преобразование в UTF-8
Всё работает...

Захожу в PHP Admin, Делаю обзор любой таблички а данные так и остались Win-1251....
Добавляю через форум нового пользователя или тему, картина таже - все данные в БД хранятся как Win-1251 Что с этим делать?
Мне надо чтобы реальный UTF-8 был, так как к табличке юзеров обращается другой софт работающий в UTF-8 и соответственно там ? ? ? ? ? сплошные выдаются....

P.S. MySQL настроен на 1251 -  в my.cnf висит

[mysql]
default-character-set=cp1251

[mysqld]
default-character-set=cp1251

и менять это не собирается никто...

Mavn

самый лучший способ что то сделать так это сделать руками!
http://www.simplemachines.ru/index.php/topic,1376.0.html
тоже самое только для своей кодировки сделайте!
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

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

Fedaykin

Чего ручками? Конвертировать базу после любого добавления чего угодно?

Mavn

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

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

Alessandro

При попытке преобразовать базу в UTF-8 выдаётся вот такое сообщение:
Column 'filename' cannot be part of FULLTEXT index
File: /тут идёт полный адрес/forum/Sources/Admin.php
Line: 1329


Соотв. строка файла Admin.php выглядит так:
ALTER TABLE $table_info[Name]" . substr($updates_blob, 0, -1), __FILE__, __LINE__);

Подскажите, что делать.

digger®

Цитата: Alessandro от 10 марта 2008, 15:27:53
При попытке преобразовать базу в UTF-8 выдаётся вот такое сообщение:
Column 'filename' cannot be part of FULLTEXT index
File: /тут идёт полный адрес/forum/Sources/Admin.php
Line: 1329


Соотв. строка файла Admin.php выглядит так:
ALTER TABLE $table_info[Name]" . substr($updates_blob, 0, -1), __FILE__, __LINE__);

Подскажите, что делать.

Попробовать отключить "Полнотекстовое индексирование" в настройках поиска.

Alessandro

Цитата: digger от 10 марта 2008, 22:20:57
Попробовать отключить "Полнотекстовое индексирование" в настройках поиска.
Проверил - оно итак отключено.

Alessandro

Больше идей нет? Может в этой строке в Admin.php, на которую он ругается, что-то подправить нужно?

Morphium

Преобразовал БД в utf-8
Возникла проблема, форум упорно продолжает перехватывать русский текст с файлов *.russian.php
Как сделать так, чтобы форум, как ему сейчас положено, перехватывал текст с *.russian-utf8.php

Bugo

Скачайте соответствующую локализацию и выберите её в настройках языка.

Morphium

Цитата: Bugo от 12 февраля 2011, 15:53:21
Скачайте соответствующую локализацию и выберите её в настройках языка.
Спасибо, разобрался. У меня в настройках языка две русских графы появилось с кодировкой UTF-8, причем часть пользователей перекинуло в одну графу, другую часть, соответственно, в другую графу.
Одну графу удалил и все нормально стало.

Хран

Помогите пожалуйста, после конвертации из  cp1251 в utf-8 пол форума в знаках вопроса.
Зайти в админку не могу почему то, не подходит пароль.
Файлы локализации подкинул.
Прописано: $db_character_set = 'utf8'
В знаках вопроса служебные слова, например "пользователь", "новые сообщения " и так далее, сами сообщения и названия тем нормально.

Хран

Цитата: Хран от 28 июня 2013, 14:39:02
Помогите пожалуйста, после конвертации из  cp1251 в utf-8 пол форума в знаках вопроса.
Зайти в админку не могу почему то, не подходит пароль.
Файлы локализации подкинул.
Прописано: $db_character_set = 'utf8'
В знаках вопроса служебные слова, например "пользователь", "новые сообщения " и так далее, сами сообщения и названия тем нормально.
Мой косяк, надо было еще поправить в Settings.php  $language = 'russian-utf8';
Извините.

Солярис

Приветствую!

Где можно скачать русскую кодировку в utf8 для версии 1.1.21?

Обыскался уже.

Спасибо.

valek0972


Солярис

Благодарю за ссылку. O0

А то я на официальном сайте копался, копался и никак нужную кодировку не находил.

+++++++++++++++++

Рано обрадовался. На эту ссылку я , по-моему, уже выходил.
При попытке загрузить пакет выдается сообщение об ошибке: ошибка сети.  ???

Yarik

Цитата: Солярис от 30 сентября 2016, 09:43:46При попытке загрузить пакет выдается сообщение об ошибке: ошибка сети.  ???
А там ничего не скачивается,видать какие-то тех.проблемы.
Прийдётся ждать пока починят.

valek0972

Цитата: Солярис от 30 сентября 2016, 09:43:46При попытке загрузить пакет выдается сообщение об ошибке: ошибка сети
Все качается, вот сюда закинул.


Мэл

При попытке конвертировать БД форума 2.0.14 из 1251 в UTF-8 выскакивает следующее сообщение:

Incorrect string value: '\xF8\xE5\xE2\xF0\xEE\xED...' for column 'filename' at row 25
Файл: /home/me/public_html/forum/forum/Sources/ManageMaintenance.php
Строка: 694

Примечание: возможно, базе данных требуется обновление. Версия файлов форума SMF 2.0.14, тогда как версия используемой базы данных 2.0. Для устранения ошибки, пожалуйста, обновите форум.


Как починить, кто-то знает?)
"Great spirits have often encountered violent opposition from weak minds" - Albert Einstein

kak2z

Вы пытаетесь из админки форума это сделать?? это плохая идея...
базу надо отдельно конвертировать а потом просто переключить форум на ЮТФ8
Если нужно что то исправить, обновить, переставить, настроить, сделать форум заново - пишите в ЛС)

Мэл

Цитата: kak2z от 15 октября 2017, 21:23:55Вы пытаетесь из админки форума это сделать?? это плохая идея...
базу надо отдельно конвертировать а потом просто переключить форум на ЮТФ8
Не знал. А как это сделать?
"Great spirits have often encountered violent opposition from weak minds" - Albert Einstein

digger®

Цитата: Мэл от 15 октября 2017, 20:40:30При попытке конвертировать БД форума 2.0.14 из 1251 в UTF-8 выскакивает следующее сообщение:
Incorrect string value: '\xF8\xE5\xE2\xF0\xEE\xED...' for column 'filename' at row 25
База наверное и так в UTF8, а вы ее конвертировать пытаетесь.

kak2z

Цитата: Мэл от 15 октября 2017, 21:36:17Не знал. А как это сделать?
посмотрите на базу через phpMyAdmin, если там в сама база и таблички и поля табличек в utf8 - тогда наверно лучше ничего не делать..
а если они как раз в 1251 - тогда надо базу конвертировать..
Если нужно что то исправить, обновить, переставить, настроить, сделать форум заново - пишите в ЛС)

Мэл

База в cp1251_general_ci, иначе я бы не брался)
"Great spirits have often encountered violent opposition from weak minds" - Albert Einstein


kak2z

Цитата: Мэл от 16 октября 2017, 01:00:29База в cp1251_general_ci, иначе я бы не брался)
в phpMyAdmin зайдите в свою базу и выполните запрос
SHOW VARIABLES LIKE 'character_set_database'должно показать кодировку базы.. но обычно она совпадает со сравнением..

потом
SELECT CONCAT(  'ALTER TABLE `', t.`TABLE_SCHEMA` ,  '`.`', t.`TABLE_NAME` ,  '` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;' ) AS sqlcode
FROM  `information_schema`.`TABLES` t
WHERE 1
AND t.`TABLE_SCHEMA` =  'My_DB_for_convert'
ORDER BY 1
LIMIT 0 , 90
где My_DB_for_convert - Ваша база..
вам выдаст большой список запросов
их всех надо выполнить..
если вдруг не разберетесь - в личку стукните с данными phpMyAdmin и админским доступом к форуму - помогу..
там быстро если знаешь как..
Если нужно что то исправить, обновить, переставить, настроить, сделать форум заново - пишите в ЛС)

Мэл

kak2z
Сделал, вроде сработало, спасибо. Искомую базу в списке вижу в phpMyAdmin как utf8_general_ci. Но теперь все названия форумов и их описание идут крякозябрами (�), хотя внутри все темы и сообщения на русском. Могу как-то с главной это безобразие убрать, или только руками переписывать? (Вписываю название раздела заново - все ок, появляется на русском).
"Great spirits have often encountered violent opposition from weak minds" - Albert Einstein

GeorG

Вы же писали что у вас русификация в двух кодировках установлена, вот включите ту что с utf8 (в настройках языка).

И это в файл сеттинг:
$db_character_set = 'utf8';
Моды тоже проверьте, должна быть русификация в кодировке utf8.
Верстка тем по шаблону, их доработка/переработка, переделка тем с версии smf 1.1 на smf 2.0. Примеры работ - insidestyle.ru
Установка модов (заточка под ваш форум); Моды под заказ; Обновление форума; Правильный перенос; Удаление/лечение вирусов; Устранения ошибок.
Обращаться в ЛС
Мой форум
Модуль анти-спама CleanTalk, сам пользуюсь
Сервера которыми сам пользуюсь - cadedic.ru

valdnieks

Здравствуйте. Посмотрите файлы в каталоге languages.
Registered Linux user #325316
Последняя версия SMF: SMF 2.0.15
Версия GD: bundled (2.1.0 compatible)
Версия MySQL: 5.5.23
PHP: 5.6.30
Версия Web сервера: Apache/2.4.25 (Win64) PHP/5.6.30

Мэл

Цитата: GeorG от 16 октября 2017, 12:29:56Вы же писали что у вас русификация в двух кодировках установлена, вот включите ту что с utf8 (в настройках языка).

И это в файл сеттинг:
$db_character_set = 'utf8';
Моды тоже проверьте, должна быть русификация в кодировке utf8.
Ну UTF-8 я сразу поставил, смекнул как-никак) 1251 удалил.
Запрос выполнил, буквы читабельными не стали.
Что до модов, так я вообще думаю их поудалять и переустановить нужные.

valdnieks
День добрый) Посмотрел - файлы модов с UTF-8.
"Great spirits have often encountered violent opposition from weak minds" - Albert Einstein

valdnieks

Моды, да, необходимо все переустанавливать.
Registered Linux user #325316
Последняя версия SMF: SMF 2.0.15
Версия GD: bundled (2.1.0 compatible)
Версия MySQL: 5.5.23
PHP: 5.6.30
Версия Web сервера: Apache/2.4.25 (Win64) PHP/5.6.30

valdnieks

Цитата: Мэл от 16 октября 2017, 12:42:38valdnieks
День добрый) Посмотрел - файлы модов с UTF-8.

Плохо Вы смотрели. Какие файлы с UTF-8?
Registered Linux user #325316
Последняя версия SMF: SMF 2.0.15
Версия GD: bundled (2.1.0 compatible)
Версия MySQL: 5.5.23
PHP: 5.6.30
Версия Web сервера: Apache/2.4.25 (Win64) PHP/5.6.30

kak2z

Если нужно что то исправить, обновить, переставить, настроить, сделать форум заново - пишите в ЛС)

valdnieks

Цитата: kak2z от 16 октября 2017, 14:39:10зачем?

Давным-давно, Вы или другие пользователи, писали, что после перекодировки в utf8, необходимо переустанавливать моды.
 
Registered Linux user #325316
Последняя версия SMF: SMF 2.0.15
Версия GD: bundled (2.1.0 compatible)
Версия MySQL: 5.5.23
PHP: 5.6.30
Версия Web сервера: Apache/2.4.25 (Win64) PHP/5.6.30

Мэл

Вроде как все получилось, нормально работает. Лишь на главной странице в ссылках на темы ("Непрочитанные сообщения") значок � иногда встречается.
"Great spirits have often encountered violent opposition from weak minds" - Albert Einstein


Мэл

"Great spirits have often encountered violent opposition from weak minds" - Albert Einstein

AXX

после конвертации БД в UTF8 вместо заглавной буквы Р отображает знак ?, остальные знаки нормально отображаются, в базе все корректно отображается. в чем может быть проблема?

valdnieks

Цитата: AXX от 19 ноября 2017, 15:07:23после конвертации БД в UTF8 вместо заглавной буквы Р отображает знак ?, остальные знаки нормально отображаются, в базе все корректно отображается. в чем может быть проблема?

Может быть что-то от смайликов.
Registered Linux user #325316
Последняя версия SMF: SMF 2.0.15
Версия GD: bundled (2.1.0 compatible)
Версия MySQL: 5.5.23
PHP: 5.6.30
Версия Web сервера: Apache/2.4.25 (Win64) PHP/5.6.30


antariom


Mavn

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

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