Ïðîáëåìà ñ êîäèðîâêàìè ñðàçó ïîñëå óñòàíîâêè Ïðîáëåìà ñ êîäèðîâêàìè ñðàçó ïîñëå óñòàíîâêè
 

News:

CPG Release 1.6.26
Correct PHP8.2 issues with user and language managers.
Additional fixes for PHP 8.2
Correct PHP8 error with SMF 2.0 bridge.
Correct IPTC supplimental category parsing.
Download and info HERE

Main Menu

Ïðîáëåìà ñ êîäèðîâêàìè ñðàçó ïîñëå óñòàíîâêè

Started by Varrah, October 20, 2006, 10:58:27 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Varrah

Âñåì ïðèâåò

Óæå íàïèñàë ýòîò âîïðîñ â îáùèé ôîðóì, íî òàì ïîêà íèêòî íå îòâåòèë, òàê ÷òî ïðîäóáëèðóþ è òóò, áëàãî âîïðîñîâ ñ êîäèðîâêàìè, à çíà÷èò è îòâåòîâ, áîëüøå âñåãî ñêëàäûâàåòñÿ ó ðóññêèõ ïîëüçîâàòåëåé Æ-)

Ñðàçó ïîñëå óñòàíîâêè cpg_149, æìåì íà êíîïêó "Continue" è ïîëó÷àåì "Fatal Error: " áåç âñÿêèõ êîììåíòîâ. Ïåðåêëþ÷èë ñèñòåìó â äåáàã-ìîä è ïîëó÷èë ñëåäóþùåå:
Quote
While executing query "select user_id from `coppermine`.photo_sessions where session_id=md5("b46fcc325af383fffb78bbf99a963d06d6020768e4617f73d93f5346f84a4141");" on 0

mySQL error: Illegal mix of collations (cp1251_general_ci,IMPLICIT) and (koi8r_general_ci,COERCIBLE) for operation '='

Êîíôèãóðàöèÿ õîñòèíãà:
MySQL 4.1.9. (Default collation: koi8-r)
PHP 5.0 (MBString, GD2)

Ïîñòàâèë äëÿ âñåõ ñîçäàííûõ òàáëèö ñíà÷àëà Collation cp1251_general_ci (âåðíåå äàæå ñàìà ñèñòåìà èõ òàê ñîçäàëà, ò.ê. äëÿ âñåé ÁÄ êîäèðîâêà ïî óìîë÷àíèþ - ÊÎÈ-8, íî äëÿ ìîåé èñïîëüçóåìîé ÁÄ ÿ ïîñòàâèë 1251), çàòåì koi8r_general_ci - íå ïîìîãëî.
Ïûòàëñÿ ïîñòàâèòü çàïðîñ ê áàçå mysql_query("SET CHARACTER SET cp1251") â ñîðöàõ, ïîñëå êàæäîãî êîííåêòà ê ÁÄ, íî è ýòî íå ïîìîãëî.

Ïðè ýòîì çàéòè ...photo/- ìîæíî, íî ïðè ïîïûòêå çàéòè íà login.php èëè äàæå íà index.php - ïîñûëàåò...

×òî äåëàòü?

Çàðàíåå áëàãîäàðåí çà îòâåòû.

Varrah

Оооо!!

Нашел!

Ошибка, как вы могли заметить, просиходит в таблице _sessions
Вся беда была в том, что для колонки session_id стояло сравнение в cp1251_general_ci. Я поменял этот параметр для этой колонки на koi8r_general_ci и все заработало!

Надеюсь, что работать это все будет и дальше, но пока остается только ждать...

Varrah

Мда...

Макс, ты поторопился ставить солвед на эту тему.
Как только я приконнектил цпг к пхпбб ошибка вылезла снова. Потратил почти день на решение этой проблемы, пока не понял, что БД на этот раз ругалась не на цпг-гные таблицы и запросы, а на таблицы пхпбб. Тут до меня дошло, что все не так просто.

Короче: я просто перепутал, изначально ставя запрос "SET CHARACTER SET cp1251". Должно быть, как и в пхпбб, "SET NAMES cp1251". Если сделать так после каждого коннекта к БД - то все заработает.

Это, между прочим, решает и проболему с русскими именами в списках пользователей при коннекте цпг к пхпбб - пхпбб пишет имена в действительной и настоящей цп1251, а цпг, не говоря базе не слова, получает эти же самые имена в дефолтовой кодировке БД, т.е. довольно часто в кои8 или вообще в латин-1. Если же мы заставим цпг коннектиться к базе с указанием кодировки для передачи данных, то все встанет на свои места.

Уже написал про это дело в английской чатси форума, просил, чтобы они это вписали в баг-лист, т.к. сам пока не осовился на форуме достаточно, чтобы знать где тут вписывают баги и их решение. Можешь попомчь нашим иностранным колегам с проталкиванием этого бага и его фикса в массы разработчиков, дабы русские и другие пользователи с мультибайтовыми коидровками наконец обрели полнофункциональную поддержку своих кодировок?
Ссылка на английский топик: http://forum.coppermine-gallery.net/index.php?topic=37522.0

pipemba

åñëè íå òðóäíî... ðàñêàæè ÷òî äåëàòü ïî ïóíêòàì?
ó ìåíÿ ãàëåðåÿ â koi8-r
êàêèå ìîè äåéñòâèÿ... òîêà ïî ðàçæîâàíåé... à òî ñ ïõï ÿ çíàêîì ìàëî, à îøèáêó óáðàòü õî÷åòñÿ

pipemba

ïðîøó ïðîùåíèÿ çà íåâíèìàòåëüíîñòü... íàøîë ãäå òû ýòî îïèñàë ïî ïóíêòàì

Makc666

Quote from: Varrah on October 22, 2006, 01:29:05 PM
Ìàêñ, òû ïîòîðîïèëñÿ ñòàâèòü ñîëâåä íà ýòó òåìó.
Ïîìåíÿë íà Known Issue :P