Проблема с Guestbook при переносе форума

Проблемы с установкой или работой phpBB 2.0.x? Ищите ответы здесь!
Аватара пользователя
slavius2003
phpBB 1.4.2
Сообщения: 52
Стаж: 19 лет 10 месяцев
Откуда: Нижний Новгород

Проблема с Guestbook при переносе форума

Сообщение slavius2003 »

Здравствуйте !
Я перенес форум с одного хостинга на другой, но тут возникла проблема с кодировкой. К счастью я это исправил. Теперь русские буквы отображаются как положено, а не знаками вопроса. Но мод гостевой книги Advanced Guestbook, все равно русские буквы понимать не хочет, и вместо них печатает одни знаки вопроса. Может ктото уже сталкивался с подобной проблемой и знает как ее решить.

Заставить понимать русские буквы нужно только гостевую книгу, с форумом эту проблему я уладил следующим образом:
в config.php добавил следующий код:

Код: Выделить всё

$mysql_charset = 'cp1251'; 
$collation_connection = 'cp1251_general_ci';
а в файле include/db.php после строк

Код: Выделить всё

$db = new sql_db($dbhost, $dbuser, $dbpasswd, $dbname, false); 
if(!$db->db_connect_id) 
{ 
 message_die(CRITICAL_ERROR, "Could not connect to the database"); 
}
добавил :

Код: Выделить всё

// Set connection charset & collation for MySQL (based on phpMyAdmin) 
if( preg_match("/^mysql/i", SQL_LAYER) ) 
{ 
 $sql = 'SELECT VERSION() AS mysql_version'; 
 $result = $db->sql_query($sql); 
 $row = $db->sql_fetchrow($result); 
 $match = explode('.', $row['mysql_version']); 
 if (!isset($row)) 
 { 
    define('MYSQL_INT_VERSION', 32332); 
    define('MYSQL_STR_VERSION', '3.23.32'); 
 } 
 else 
 { 
    define('MYSQL_INT_VERSION', (int)sprintf('%d%02d%02d', $match[0], $match[1], intval($match[2]))); 
    define('MYSQL_STR_VERSION', $row['mysql_version']); 
 } 
 unset($result, $row, $match); 
 if ( MYSQL_INT_VERSION >= 40100 && isset($mysql_charset) ) 
 { 
    if (empty($collation_connection) || ( strpos($collation_connection, '_') ? substr($collation_connection, 0, strpos($collation_connection, '_')) : $collation_connection) == $mysql_charset ) 
    { 
       $sql = "SET NAMES $mysql_charset"; 
       if ( !($db->sql_query($sql)) ) 
       { 
          message_die(CRITICAL_ERROR, 'Could not set MySQL charset', '', __LINE__, __FILE__, $sql); 
       } 
    } 
    else 
    { 
       $sql = "SET CHARACTER SET $mysql_charset"; 
       if ( !($db->sql_query($sql)) ) 
       { 
          message_die(CRITICAL_ERROR, 'Could not set MySQL charset', '', __LINE__, __FILE__, $sql); 
       } 
    } 
    if ( !empty($collation_connection) ) 
    { 
       $sql = "SET collation_connection = '$collation_connection'"; 
       if ( !($db->sql_query($sql)) ) 
       { 
         message_die(CRITICAL_ERROR, 'Could not set MySQL collation connection', '', __LINE__, __FILE__, $sql); 
       } 
    } 
 } 
}
после чего проблема с форумом пропала, но осталась все еще не решонной проблема с Модом гостевой книги Advanced Guestbook
Да прибудет с вами великая сила
Аватара пользователя
Никто
Advanced Lamers Team
Сообщения: 316
Стаж: 19 лет 4 месяца
Откуда: Химки
Забанен: Бессрочно

Сообщение Никто »

slavius2003
Откуда вы взяли это решение?
Долой edgar'a - самого тупого юзера на форуме!
Аватара пользователя
crash
Former team member
Сообщения: 6517
Стаж: 20 лет 10 месяцев
Откуда: Бердск

Сообщение crash »

Никто писал(а):Откуда вы взяли это решение?
с phpbbguru.net
только не пойму при чем тут твой вопрос
Как правильно задавать вопросы
Для особо одаренных: поиск - это есть круто.
FAQ v.2 | FAQ v.3 | Шаблон запроса
Аватара пользователя
Никто
Advanced Lamers Team
Сообщения: 316
Стаж: 19 лет 4 месяца
Откуда: Химки
Забанен: Бессрочно

Сообщение Никто »

crash
интересно стало.
2) по теме. ИМХО легче залить в базу с установленой на ней кодировкой, а не перелопачивать форум
Долой edgar'a - самого тупого юзера на форуме!
Аватара пользователя
slavius2003
phpBB 1.4.2
Сообщения: 52
Стаж: 19 лет 10 месяцев
Откуда: Нижний Новгород

Сообщение slavius2003 »

Да я уже всякие кодировки пробовал, все равно ничего не помогает

Добавлено спустя 3 минуты 29 секунд:

Вставлял в файл config гостевой книги строки

Код: Выделить всё

$mysql_charset = 'cp1251'; 
$collation_connection = 'cp1251_general_ci';
но не дало никакого результата
Да прибудет с вами великая сила

Вернуться в «Поддержка phpBB 2.0.x»