Проблема с кодировкой при переходи с MySQL 4.0 на 4.1.* & Проблема с кодировкой при переходи с MySQL 4.0 на 4.1.* &
 

News:

CPG Release 1.6.27
change DB IP storage fields to accommodate IPv6 addresses
remove use of E_STRICT (PHP 8.4 deprecated)
update README to reflect new website
align code with new .com CPG website
correct deprecation in captcha

Main Menu

Проблема с кодировкой при переходи с MySQL 4.0 на 4.1.* &

Started by Makc666, May 03, 2007, 02:29:52 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Makc666

Решил написать на основе темы:
encoding issue (MySQL 4.1.15)
http://forum.coppermine-gallery.net/index.php?topic=24129.0
, т.к. сам столкнулся с этим.

Если Вы или Ваш хост обновились с MySQL 4.0 на 4.1.* или 5.*
Если MySQL 4.1.* или 5.* работает по умолчанию в UTF-8. -->> MySQL-кодировка: UTF-8 Unicode (utf8)
Если база данных вашей галереи в кодировке cp1251. -->> Сравнение "cp1251_general_ci"

То нужно...

Открыть файл:
include/functions.inc.php

Найти кусок кода:
function cpg_db_connect()
{
       global $CONFIG;
       $result = @mysql_connect($CONFIG['dbserver'], $CONFIG['dbuser'], $CONFIG['dbpass']);
       if (!$result) {
               return false;
       }
       if (!mysql_select_db($CONFIG['dbname']))
               return false;
       return $result;
}


Добавить в него строку:
mysql_query("SET NAMES 'cp1251'",$result);

Чтобы получилось вот так:
function cpg_db_connect()
{
       global $CONFIG;
       $result = @mysql_connect($CONFIG['dbserver'], $CONFIG['dbuser'], $CONFIG['dbpass']);
       if (!$result) {
               return false;
       }
       if (!mysql_select_db($CONFIG['dbname']))
               return false;
mysql_query("SET NAMES 'cp1251'",$result); <<--- добавленная строка
       return $result;
}


Сохранить файл.

Вот и всё :)