The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Кодировки"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы WEB технологии (Public)
Изначальное сообщение [Проследить за развитием треда]

"Кодировки"  
Сообщение от WhitePangolin email(ok) on 12-Апр-07, 16:47 
И снова здравствуйте.

Ситуация:
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>

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

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

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

 Оглавление

  • Кодировки, A, 18:38 , 12-Апр-07, (1)  
    • Кодировки, WhitePangolin, 09:57 , 13-Апр-07, (2)  
      • Кодировки, WhitePangolin, 10:26 , 13-Апр-07, (3)  
        • Кодировки, WhitePangolin, 15:17 , 13-Апр-07, (4)  
          • Кодировки, pavel_simple, 15:30 , 13-Апр-07, (5)  
            • Кодировки, WhitePangolin, 16:21 , 13-Апр-07, (6)  
              • Кодировки, WhitePangolin, 16:43 , 13-Апр-07, (7)  

Сообщения по теме [Сортировка по времени, UBB]


1. "Кодировки"  
Сообщение от A on 12-Апр-07, 18:38 
может оказаться, что оно именно так в базе и лежит?
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Кодировки"  
Сообщение от WhitePangolin email(ok) on 13-Апр-07, 09:57 
>может оказаться, что оно именно так в базе и лежит?

Верно. Не хочется позорится но...

Дамп скидывался под виндой, копировался на FreBSD и там импортировался и естественно в неверной кодировке.

Перед импортом нужно было пробить команду
iconv -f WINDOWS-1251 -t KOI8-R win.sql > koi.sql

всем спасибо.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "Кодировки"  
Сообщение от WhitePangolin email(ok) on 13-Апр-07, 10:26 
Поправка

>Перед импортом нужно было пробить команду
>iconv -f WINDOWS-1251 -t KOI8-R win.sql > koi.sql

в моем случае надо было
iconv -f WINDOWS-1251 -t UTF-8 win.sql > utf.sql

результат изменился.
теперь вместо Ïóñêî íàëàäî÷íûå ðàáîòû я получаю Пуско наладоч

Данные в базе скула лежат правильные закодированные в utf-8, но в браузере фигня. Где еще я могу ошибаться?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "Кодировки"  
Сообщение от WhitePangolin email(ok) on 13-Апр-07, 15:17 
добавление в my.cnf строк

default-character-set=cp1251
skip-character-set-client-handshake

ничего не дало.
очень нужна помощь. ставить винду на сервак до слез не хочется.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "Кодировки"  
Сообщение от pavel_simple (ok) on 13-Апр-07, 15:30 
>добавление в my.cnf строк
>
>default-character-set=cp1251
>skip-character-set-client-handshake
>
>ничего не дало.
>очень нужна помощь. ставить винду на сервак до слез не хочется.

переменные окружения проверял когда базу закачивал????
а можно проще сделать -- базу из под виндов задампи -- и из под виндов же перенеси на linux (или какой он там) сервер

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "Кодировки"  
Сообщение от WhitePangolin email(ok) on 13-Апр-07, 16:21 
>а можно проще сделать -- базу из под виндов задампи -- и из под виндов же перенеси на linux (или какой он там) сервер

данные в базе на сервере лежат хорошо.
в консоли русские буковки я вижу. проблемма не в переносе данных в базу, проблемма в том что все скрипты написаны в utf8 и прекрасно отображают русский язык в браузере, а данные из бд хоть и стоят в той же utf8 но выводятся козябликами.

добавление команд
mysql_query('SET NAMES "UTF8"');
mysql_query("SET collation_connection='utf8_general_ci'");
mysql_query("SET collation_server='utf8_general_ci'");
mysql_query("SET character_set_client='utf8'");
mysql_query("SET character_set_connection='utf8'");
mysql_query("SET character_set_results='utf8'");
mysql_query("SET character_set_server='utf8'");
сразу после коннекта также ничего не дало :(

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "Кодировки"  
Сообщение от WhitePangolin email(ok) on 13-Апр-07, 16:43 
Короче говоря заработало только после того как системные переменные касающиеся кодировок были приведены к такому виду
mysql> \g SHOW VARIABLES LIKE '%char%'
+--------------------------+----------------------------------+
| Variable_name            | Value                            |
+--------------------------+----------------------------------+
| character_set_client     | utf8                             |
| character_set_connection | utf8                             |
| character_set_database   | utf8                             |
| character_set_filesystem | binary                           |
| character_set_results    | utf8                             |
| character_set_server     | utf8                             |
| character_set_system     | utf8                             |
| character_sets_dir       | /usr/local/share/mysql/charsets/ |
+--------------------------+----------------------------------+
8 rows in set (0.01 sec)

а дамп полученной в денвере базы был обработан командой
iconv -f WINDOWS-1251 -t UTF-8 win.sql > utf.sql

Всем спасибо.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру