Один из вариантов, как это можно сделать:
в includes\db.php перед
Код: Выделить всё
?>
Код: Выделить всё
$db->sql_query("SET NAMES 'cp1251'");
Код: Выделить всё
DEFAULT CHARSET=cp1251
Код: Выделить всё
?>
Код: Выделить всё
$db->sql_query("SET NAMES 'cp1251'");
Код: Выделить всё
DEFAULT CHARSET=cp1251
Стоит добавить, что это позволяет решить проблему, приводящую к ошибкеMeithar писал(а):В MySQL 4.1 для корректной работы необходимо указывать кодировку которая будет использоваться при передаче и получении информации из базы данных. В стандартном phpBB этого нет.
Один из вариантов, как это можно сделать
...
Ну и, разумеется, сами таблицы в базе данных тоже должны соответстовать указанной в config.php кодировке.
Код: Выделить всё
phpBB : Critical Error
Could not obtain ban information
DEBUG MODE
SQL Error : 1271 Illegal mix of collations for operation ' IN '
SELECT ban_ip, ban_userid, ban_email FROM phpbb_banlist WHERE ban_ip IN (...
Код: Выделить всё
Could not insert new word matches
DEBUG MODE
SQL Error : 1267 Illegal mix of collations (cp1251_bin,IMPLICIT) and (latin1_swedish_ci,COERCIBLE) for operation ' IN '
INSERT INTO phpbb_search_wordmatch (post_id, word_id, title_match) SELECT 6, word_id, 0 FROM phpbb_search_wordlist WHERE word_text IN ('выаыва')
Line : 251
File : functions_search.php
Так точно! Подтверждаю! Вышеописанную проблему действительно устраняет, но только если форум с нуля устанавливаешь.Denny писал(а):Спасибо за решение.
Еще и проблему с ошибкой при добавлении темы с русским именем.Код: Выделить всё
Could not insert new word matches DEBUG MODE SQL Error : 1267 Illegal mix of collations (cp1251_bin,IMPLICIT) and (latin1_swedish_ci,COERCIBLE) for operation ' IN ' INSERT INTO phpbb_search_wordmatch (post_id, word_id, title_match) SELECT 6, word_id, 0 FROM phpbb_search_wordlist WHERE word_text IN ('выаыва') Line : 251 File : functions_search.php