URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID8
Нить номер: 4217
[ Назад ]

Исходное сообщение
"MySQL: изменение кодировки"

Отправлено WhitePangolin , 06-Июл-06 21:30 
Приветствую уважаемые.
Люди окажите пожалуйста помощь. Имеем: Apache 2.0.55 + MySQL 5.0.15 + PHP 4.4.1 + phpMyAdmin 2.6.4
Прелюдия:
В базе данных появилась необходимость хранения информации на великом русском языке. В phpMyAdmin создал таблицы, занес тестовые данные, все путем, с отображением в phpMyAdmin никаких проблемм, НО моему PHP скрипту MySQL отдает данные в кодировке latin1. В результате в браузере вместо осмысленного содержания получаю что то вроде "????? ??? ?????".
А теперь собственно вопрос:
Как заставить эту сволочь возвращать результат в кодировке koi8-r и желательно без шунтирования мозга?
Заранее благодарен.

Содержание

Сообщения в этом обсуждении
"MySQL: изменение кодировки"
Отправлено XAnder , 07-Июл-06 08:32 
>Как заставить эту сволочь возвращать результат в кодировке koi8-r и желательно без
>шунтирования мозга?

Насчет пятерки не знаю, но в четверке прокатывал запрос типа "SET NAMES <кодировка>" сразу после коннекта к базе.


"MySQL: изменение кодировки"
Отправлено WhitePangolin , 07-Июл-06 11:43 
>>Как заставить эту сволочь возвращать результат в кодировке koi8-r и желательно без
>>шунтирования мозга?
>
>Насчет пятерки не знаю, но в четверке прокатывал запрос типа "SET NAMES <кодировка>" сразу после коннекта к базе.

Спасибо огромное, все идеально заработало.


"MySQL: изменение кодировки (часть 2)"
Отправлено WhitePangolin , 12-Апр-07 16:34 
часть 2.

И снова здравствуйте.
Новая ситуация:
FreeBSD 6.2-RELEASE + apache-2.2.3 + mysql-server-5.1.11 + php5-5.1.6_3 + все скрипты написаны в UTF-8

в php.ini
default_charset=utf8
mbstring.language=Russian
mbstring.internal_encoding=utf8

в .htaccess
AddDefaultEncoding Off

в index.htm
<meta http-equiv="content-type" content="text/html; charset=UTF-8">

в дампе
CREATE DATABASE `test` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

перед коннектом к базе выполняем
mysql_query('set character utf8');
mysql_query('set names utf8');

результат плачевный ибо после выполнения запроса результатом выполнения скрипта например:
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
</head>
<body>
<?$sql=mysql_query('SELECT * FROM `descr`');$sql=mysql_fetch_array($sql);?>
Описание: <?=$sql['descr']?>
</body>
</html>

является надпись:
Описание: Ïóñêî íàëàäî÷íûå ðàáîòû

Самое обидное, что обкатывал все скрипты на денвере и на нем все пашет, куда еще копать просто не представляю :(
Как говорится ай нид любой хелп.


"MySQL: изменение кодировки (часть 2)"
Отправлено Alex , 31-Авг-09 00:29 
уберите в php.ini
default_charset=utf8