1

Тема: Проблемы с кодировками

Здравствуйте.
У меня возникла следующая проблема:
Установил wap forum phpbb6, он использует UTF8.
Но по умолчанию в базе была установлена кодировка latin1_swedish_ci.
Собственно теперь все данные (посты, голосования и т.д) в php my admin отображааются кракозябриками.
Подскажите пожалуйста, как перекодировать все таблицы в ut8_general_ci, и сделать, чтобы вновь создоваемые таблицы были в UTf8.
Заранее спасибо!

2

Re: Проблемы с кодировками

И если не трудно, кто может гляньте вот этот скрипт форума php bbwap
http://phpbb-wap.ru/files/phpBB-WAP_v6.zip
Непойму, какие-юы кодировки при установке не ставил - все равно в MyAdmin некорректно отображаются

3

Re: Проблемы с кодировками

mirex
У вас есть доступ к конфигурационному файлу MySQL?

Сделайте дамп БД и покажите структуру любой таблицы содержащей поля с кириллицей. Также покажите как в дампе выглядят кряозябы, если они есть. Используйте Notepad++ для открытия дампа.

Что такое phpbb6? Дайте ссылку.

4

Re: Проблемы с кодировками

Ссылочка есть выше.
Так, видел в соседних темах что нужна еще доп инфа, так вот в муадмине кодировка на гланой показывает UTF8, а по запросу, тот что Вы просили сделать в соседних темах кодировка соединения и т.д. почти все latin. Сайт на вдс, так что полный доступ.

Вот таблица, что Вы просили.
P.s Мне бы как-нить текущую перекодить в CP1251 и сделать в myadmin ее кодировкой, чтобы норм все отображал.
P.p.s А сам форум все отображается корректно.

Структура таблицы `phpbb_album_rate`
--

CREATE TABLE IF NOT EXISTS `phpbb_album_rate` (
  `rate_pic_id` int(11) unsigned NOT NULL,
  `rate_user_id` mediumint(8) NOT NULL,
  `rate_user_ip` char(8) NOT NULL,
  `rate_point` tinyint(3) unsigned NOT NULL,
  KEY `rate_pic_id` (`rate_pic_id`),
  KEY `rate_user_id` (`rate_user_id`),
  KEY `rate_user_ip` (`rate_user_ip`),
  KEY `rate_point` (`rate_point`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

--
-- Дамп данных таблицы `phpbb_album_rate`

Вот кракозябры

(1, '???????‡?µ?µ', 0, 1, 1, '', 102400, ''),
(2, '?’?????µ??', 0, 1, 1, '', 102400, ''),
(3, '???°???‚????????', 1, 1, 1, '', 102400, ''),
(4, '?????…?????‹', 0, 1, 1, '', 102400, ''),
(5, '???µ?»????????', 0, 1, 1, '', 102400, '');

5

Re: Проблемы с кодировками

mirex
Такие вопросики перекодировать нельзя.
Как крякозябы в phpMyAdmin выглядят? Возможно вы сохранили дамп не в utf8, или использовали плохой текстовый редактор для открытия файла дампа.

Самый простой вариант установки кодировки соединения с MySQL - это прописать в my.cnf, раздел [mysqld] строку:
init-connect="SET NAMES utf8"

Также, в разделах [mysql] и [mysqld] поправьте строку:
default-character-set=utf8

Где utf8 - это кодировка страниц скрипта.

6

Re: Проблемы с кодировками

Вроде бы для этого скрипта CP1251 надо....
Вот из myadmin

?????????µ?‚! ?•???»?? ?‚?‹ ?‡???‚?°?µ???? ???‚?? ???????±?‰?µ?????µ, ?·???°?‡???‚ ?„???????? phpBB-WAP v6 ???????µ?????? ?????‚?°?????????»????! ?????»???·???????? ???° ?·?????????????µ :)

7

Re: Проблемы с кодировками

mirex
Данные в utf8, значит страницы скрипта в кодировке utf-8.

Если необходимо использовать cp1251, то посмотрите настройки скрипта, есть ли возможность смены кодировки. В случае смены кодировки, дамп потребуется перекодировать в cp1251.

8 (изменено: Hanut, 2009-02-01 16:55:44)

Re: Проблемы с кодировками

А вот как бы мне его сделать в нормальной кодировке?

Скрипт перекодировки отправил на почту.

9 (изменено: mirex, 2009-02-01 18:56:09)

Re: Проблемы с кодировками

Около 3-ч часов колупал, ничего не выходит.
Все перепробовал - тот скрипт выдает illegat characters... phpMyAdmin криво сливает дамп...
Попробовал сделать дамп Sypex Dumper`om, он получился в смешанной кодировке ANSI as UTF8 (как показал notepad++). Затем через notepad перекодировал его в UTF8. Теперь дамп стал читаемый, но немогу залить его через MyADmin, выдает ошибку. ВОт что получилось после всех операций.

DROP TABLE IF EXISTS `phpbb_posts_text`;
CREATE TABLE `phpbb_posts_text` (
  `post_id` mediumint(8) unsigned NOT NULL default '0',
  `bbcode_uid` char(10) NOT NULL default '',
  `post_subject` char(60) default NULL,
  `post_text` text,
  PRIMARY KEY  (`post_id`)
) ENGINE=MyISAM /*!40101 DEFAULT CHARSET=cp1251 */;

INSERT INTO `phpbb_posts_text` VALUES
(1, '', NULL, 'Привет! Если ты читаешь это сообщение, значит форум phpBB-WAP v6 успешно установился! Пользуйся на здоровье :)');

DEFAULT CHARSET=cp1251 пробовал менять на utf8, все равно не льется yikes

10

Re: Проблемы с кодировками

mirex
И в чем проблема, если кириллица появилась? Что значит - не льется?
Поменяйте кодировку на utf8, как вы указали ниже и импортируйте выбрав кодировку файла utf8.