Возрадуемся, братья! Ж-)
Короче так: цпг не передает БД информации о том, в какой кодировке он пишет данные, равно как и получает, конечно же. Таким образом БД думает, что цпг использует дефолтовую кодировку (какая кодировка стоит по умолчанию в БД - смотреть, понятное дело в настройках БД) потому и информацию, которую записал в БД пхпбб она выдает в цпг не в нужной кодировке (которую указал при записи пхпбб), а в дефолтной, например кои8 или латин-1. Чтобы такого не происходило достаточно при каждом коннекте цпг к МуСКЛу добавить простой запрос вида "SET NAMES <charset>" где <charset> - кодировка в которой работает пхпбб и ваша галерея. Кодировка должна быть одинаковой и галереи и пхпбб, иначе глюк все равно вылезет. Возможно, вообще-то, сделать так, чтобы кодировка бралась из конфигов пхпбб и затем использовалась только при запросах к таблицам пхпбб, но это уже вопрос к разработчикам бридж-менеджера и т.п.
Пока я могу лишь предложить решение для случая когда и цпг и пхпбб работают, например в кодировке виндоувз-1251.
Итак:
0. Дочитайте это сообщение до конца.
0,5. Сделайте бэкап изменяемых ниже файлов
0,6. Сделайте бэкап базы
1. Находим в папке coppermine файл bridgemgr.php
в нем ищем строку:
$link = mysql_connect($_POST['db_hostname'], $_POST['db_username'], $_POST['db_password']);
сразу после нее дописываем еще одну строку:
mysql_query("SET NAMES cp1251", $link);
аналогично находим строку:
$link = @mysql_connect($BRIDGE['db_hostname'], $BRIDGE['db_username'], $BRIDGE['db_password']);
и добавляем сразу после нее:
mysql_query("SET NAMES cp1251", $link);
2. В файле coppermine\include\functions.inc.php ищем строку:
$result = @mysql_connect($CONFIG['dbserver'], $CONFIG['dbuser'], $CONFIG['dbpass']);
после нее добавляем
mysql_query("SET NAMES cp1251", $result);
3. В файле coppermine\bridge\udb_base.inc.php ищем строку:
$this->link_id = mysql_connect($this->db['host'], $this->db['user'], $this->db['password']);
после нее добавляем:
mysql_query("SET NAMES cp1251", $this->link_id);
собственно все.
Да, важный момент: после всего этого безобразия с кодом, если в вашей галерее уже было много русских названий, комментов и пр. - все станет нечитаемым, т.к. теперь БД наконец-то начтне выдавать вам байты текста, перекодируя их в вин-1251. Потому либо руками, либо при помощи каких-либо инструментов для перекодировки содержимого БД перекодируйте ваши тексты в нужные кодировки. В моем случае все делалось практически сразу после установки цпг, потому я все переделал руками (всего-то строчек пять было).
Если вы используете не вин-1251, а какую-то другую кодировку, то проверьте, как она называется в стандарте МуСКЛа. Сделать это можно здесь:
http://dev.mysql.com/doc/refman/4.1/en/charset-charsets.htmlНу вроде все....