Регистрация    Забыли пароль?        Правила форума    FAQ (читать перед созданием новой темы)
Имя   Пароль  запомнить
  
Просмотр темы
Вернуться на сайт: PHP-Fusion SF Russian Support Site

Форум поддержки PHP-Fusion SF | Правила форума + FAQ | FAQ
# 1 Тема: [FAQ] Решение проблемы с кодировкой в PHP-Fusion SF
Sky
Супер Администратор

Avatar пользователя

АнарХия Х4

Администратор

Сообщений: 3023
Откуда: Astana
Зарегистрирован: 01 Апреля 2007, 18:11:10
Сказали спасибо 470 раз
Статус: offline
Опубликовано 14 Июля 2009, 09:08:40
В данном разделе будут освещенны наиболее частые вопросы связанные с проблемами с кодировкой в PHP-Fusion SF!


Информация будет предоставденна в классическом виде: вопрос/ответ

1. Что делать если при переносе базы у меня появились ??????? вместо текста? Как поменять кодировку в базе данных?

Если вы закачали старую базу данных на один из наших серверов, и у вас показываются "?????" вместо слов. Нужно сделать следующие:
1. Попробуйте создать базу заново, в такой последовательности:
- В панели управления cPanel, "Базы данных MySQL", создайте базу данных без таблиц.
- Создайте пользователя и пароль и не забудьте про привилегии, необходимо разрешить полный доступ (нажать кнопку "Разрешить доступ")
- В phpMyAdmin установите Language = Russian, затем установите "Сопоставление соединения с MySQL" (Сравнение) = cp1251_general_ci
- В списке баз данных БД: выберите созданную базу данных.
- В phpMyAdmin->Operations установите Collation в cp1251_general_ci и GO При этом выполнится SQL примерно такого содержания:
ALTER DATABASE `имя_базы` DEFAULT CHARACTER SET cp1251 COLLATE cp1251_general_ci
- Затем в phpMyAdmin-> SQL, кликните на "Обзор" выберите текстовый файл дампа базы данных (не забудьте установить кодировку cp1251), выполните импорт.

2. Если нет phpMyAdmin то лучше скачать программу Sypex Dumper Lite 1.0.8 и следуйте инструкциям!

Далее в файле maincore.php найди функцию:

function dbconnect($db_host, $db_user, $db_pass, $db_name) {
...
}



и замени все на:

function dbconnect($db_host, $db_user, $db_pass, $db_name) {
$db_connect = @mysql_connect($db_host, $db_user, $db_pass);
$db_select = @mysql_select_db($db_name);
mysql_query ("set character_set_client='cp1251'");
mysql_query ("set character_set_results='cp1251'");
mysql_query ("set collation_connection='cp1251_general_ci'");
if (!$db_connect) {
die("<div style='font-family:Verdana;font-size:11px;text-align:center;'><b>Unable to establish connection to MySQL</b><br>".mysql_errno()." : ".mysql_error()."</div>");
} elseif (!$db_select) {
die("<div style='font-family:Verdana;font-size:11px;text-align:center;'><b>Unable to select MySQL database</b><br>".mysql_errno()." : ".mysql_error()."</div>");
}
}



Создаём файл с именем .htaccess (если уже такой есть то редактируем) добавляем следущий код:

AddDefaultCharset windows-1251



[Изменил(а) Sky, 23 Апреля 2011, 14:45:49]

--------------------
Я в контакте

Народ читаем и запоминаем!
Не помогаю по ICQ
Не помогаю по ЛС
буду просто игнорировать эти сообщения!
Все вопросы задаем на форуме, но предварительно пользуемся поиском!
^ наверх ^
10 пользователей сказали спасибо Вам: KiRiLl, Psc, Darth Emil, Elent, GRIDark, pozitiv, mts2000, MR_DiNaMiT, Jacob, Roaddog
Перейти на форум:


94,133,293 уникальных посетителей
сейчас: 28 Марта 2024, 18:15:26
Генерация страницы: 0.04 сек.