Проблемы с кодировкой в MySQL 5

Столкнулся с проблемой кодировки при переходе из MySQL 4 в MySQL 5. Это вечная проблема, которая возникает при переходе из одной версии MySQL в другую и связана с поддерживаемыми кодовыми страницами. При переходе из MySQL 3 в MySQL 4 была проблема с кодировками, т.к. в MySQL 3 они не указывались, а в MySQL 4 стали указываться. При переходе же из версии MySQL 4 в MySQL 5 проблема связана с тем, что в 5-й версии уже используется универсальная кодировка utf-8.   В этом же форуме, я хочу подбить определённый результат, как эту проблему решить. 1. Прежде всего, нужно указать по умолчанию русские кодировки. 2. После вызова коннекта в PHP необходимо указать, что кодировка, например, cp1251 Так, например, в phpNuke я указал в файле mainfile.php после коннекта: // Rudjuk 24.06.2007 Change Error Code if ($db){ $db->sql_query(“set names ‘cp1251′”); } После этого должно работать. Кстати, при переносе данных из одного сервера, скажем MySQL 4 на другой с MySQL 5 следует обязательно после коннекта к базе (вначале дампа) указать: Код SET NAMES CP1251 Еще осталась проблема с автоматическим определением кодировки. Почему-то по умолчанию определяется на странице, что кодировка utf-8, хотя указано явно Код < meta http-equiv=”content-type” content=”text/html; charset=windows-1251″ /> В apache2 указывается кодировка по умолчанию в файле /etc/apache2/conf.d/charset, нужно просто вместо UTF-8 указать AddDefaultCharset windows-1251 Что и говорить проблемы с кодировкой – часто встречаемая проблема. Как её решить, прекрасно описано в статье: Решение проблем с кодировкой Какая кодировка настроена в MySQL вы можете узнать с помощью запроса: Код SHOW VARIABLES LIKE ‘character_set_client’; Кроме того, […]

Read more

Настройка корректного вывода кириллицы в Delphi for php

К сожалению, по умолчанию Delphi for php выводит кириллицу не корректно. Я, например, применяю в проектах UTF-8, но вместо русских букв получается абракадабра. Чтоб всё заработало корректно следует несколько настроить Apache, PHP, а возможно понадобится и .htaccess прописать. После несколько затяжной борьбы с Delphi for PHP мне удалось получить конфигурации, котрые работают коррректно и локально и на сервере. Итак, чтоб у Вас заработала кириллица, необходимо сделать правки в Apache. (Правки в основном везде связаны с таблицей кодировок по умолчанию) Заходим в каталог \apache2\conf, который находится внутри каталога Delphi for PHP. И правим файлы: httpd.conf, httpd.default.conf, httpd.template.conf так, чтоб получилось нечто похожее на: # # Based upon the NCSA server configuration files originally by Rob McCool. # # This is the main Apache server configuration file. It contains the # configuration directives that give the server its instructions. # See for detailed information about # the directives. # # Do NOT simply read the instructions in here without understanding # what they do. They’re here only as hints or reminders. If you are unsure # consult the online docs. You have been warned. # # The configuration directives are grouped into three basic sections: # 1. Directives that control the operation of the Apache server process as a # whole (the ‘global environment’). # 2. Directives that define the parameters of the ‘main’ or ‘default’ server, # which responds to requests that aren’t handled by a virtual host. # These directives also provide default values for the settings # of all […]

Read more