Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Вебмастеру (http://forum.oszone.net/forumdisplay.php?f=22)
-   -   Вопросы по MySQL Control Center (http://forum.oszone.net/showthread.php?t=43863)

hasherfrog 16-01-2005 01:48 288911

Вопросы по MySQL Control Center
 
Есть такая штука, dotProject.
Внутри него предусмотрены форумы.
Насколько я понял, форумы работают вроде бы на mysql + apach + php

Хочу подключится к mysql-таблицам через MySQL Control Center 0.9.4b
Всё нормально, но вот какая проблема:
Текст в таблицах лежит, по-видимому, в UTF-8 (или ещё как), а MySQL Control Center показывает их мне в window-1251. Понятно, что я вижу крибли-крабли.

Что делать???
Если нужна информация, спрашивайте.

Vlad Drakula 16-01-2005 02:23 288919

hasherfrog
а сменить кодировку таблицы на window-1251?

hasherfrog 16-01-2005 02:30 288923

Vlad Drakula
На самом сервере? Сомневаюсь, что это так просто получится... Мантис, кстати, в каком виде хранит данные?

mar 16-01-2005 02:56 288926

hasherfrog
данные хранит не мантис, данные хранит mysql в том виде, в котором создали базу данных и их туда положили. А мантис - php приложение и в его конфигурационном файле можно выбрать соответствующую этой базе кодировку.

Почти то же самое будет происходить с любым http-клиентом. А в PhpMyadmin вообще на первой странице можно выбрать кодировку отображения данных.

Vlad Drakula
а charset уже положенного туда ты куда денешь? ;)

mar 16-01-2005 03:14 288930

hasherfrog
Цитата:

Текст в таблицах лежит, по-видимому, в UTF-8 (или ещё как)
Код:

SHOW VARIABLES LIKE 'character_set';
можно на время сеанса менять кодировку выходных данных, но что там будет с сортировкой - не знаю (кажется, ничего хорошего) :(
Код:

SET CHARACTER SET cp1251_koi8;
и возвращать на место:
Код:

SET CHARACTER SET DEFAULT;

hasherfrog 16-01-2005 03:19 288931

mar
Я по слогам, а то напорю чуши...

1. Я получаю html-страничку с формой. У странички (и формы) стоит: кодировка UTF-8. Так мне её прислал апач. Мой домашний браусвер её просто правильно мне показал, переконвертив UTF в win-1251 при рисовании. Так?
2. Я заполняю форму, жму отправить. Браусвер ... ? Узнаёт у апача, как ему выслать данные, переконвертирует их соответственно и высылает? Или посылает 1251, а апач соответственно уже конвертит в свой UTF-8?
3. Неважно, как работает 2, главное, что апач получил всё теперь передаёт в php-скрипты уже UTF-8.
4. php отрабатывает данные, переконвертирует полученный UTF-8 в неизвестно-что соответственно-своему-cfg и кладёт в msql.
5. Соответственно _напрямую_ от msql я получаю "неизвестно-что"

Всё правильно?


ПС. в моём случае в п 4. перекодировка производится в UTF-8 (т.е. её в-общем-то и нет) - я правильно понял?


hasherfrog 16-01-2005 03:30 288933

Для информации. Сделал через web-snifer head-запрос, получил HTTP Response Header:

Name Value Delim
HTTP Status Code: HTTP/1.1 200 OK
Date: Sun, 16 Jan 2005 00:26:50 GMT CRLF
Server: Apache/2.0.52 (Win32) PHP/4.3.10 DAV/2 CRLF
Connection: close CRLF
Content-Type: text/html;charset=utf-8 CRLF

mar 16-01-2005 17:15 289078

ты будешь смеяться, но я никогда не имела дела с utf-8, ожнако, мне кажется, что броузер у тебя ничего ни во что не конвертит (так же, как не конвертит unicode), а отображает согласно кодовой странице. (Если не брать идей russian aoache, то апач обычно тоже ничего никуда не конвертит). И соответственно весь обмен данными идет в utf-8. Мне кажется, что единственный из всей этой компании, кто, судя по всему, желает жить только в cp1251 - это MySQL Control Center 0.9.4b (c которым, я, тоже дела никогда не имела :]) :(

(Вот тут у paulgor про utf-8 подробно написано.)

hasherfrog 16-01-2005 20:07 289111

mar
Ну в общем я всё правильно понял.

>> броузер у тебя ничего ни во что не конвертит
Я с программистской точки зрения :) Конвертит он, для нормальной отрисовки - виндовые фонты-то не расчитаны на unicode


>> кто, судя по всему, желает жить только в cp1251 - это MySQL Control Center 0.9.4b
Ну да. Вот я сейчас и думаю, как бы его заставить делать тоже самое, что браусвер - конвертить перед выводом (и перед обратной отправкой). Ели он mysql, может исходники где-то есть... Завтра пошукаю...
Ещё есть вариант посмотреть конфиги. Или настроить отображение с помощью некоего Arial Unicode, упомянутого выше...


Время: 04:42.

Время: 04:42.
© OSzone.net 2001-