Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: опять эти кракозябры

Сообщения:  [1-10]   [11-15] 

 
 автор: Trianon   (13.02.2009 в 17:36)   письмо автору
 
   для: Dimonus   (13.02.2009 в 17:30)
 

>Научился все делать сам!!!!

Это, конечно, не может не радовать.
Но по-моему, стоио бы научиться сразу получать корректный дамп.
А то ведь может и не свезти...

  Ответить  
 
 автор: Dimonus   (13.02.2009 в 17:30)   письмо автору
 
   для: Dimonus   (13.02.2009 в 11:52)
 

Еще раз огромное спасибо!!!!!
ВЫ СПАСЛИ МЕНЯ!!!!
Научился все делать сам!!!!

  Ответить  
 
 автор: Dimonus   (13.02.2009 в 11:52)   письмо автору
 
   для: Trianon   (13.02.2009 в 11:46)
 

Огромное спасибо.

  Ответить  
 
 автор: Trianon   (13.02.2009 в 11:46)   письмо автору
 
   для: Dimonus   (13.02.2009 в 11:38)
 

принцип зависит от того, что внутри дампа....
конкретно с Вашим я сделал следующее.
0) поглядел в дамп , увидел, что данные в нем как минимум один раз завернуты в utf8 , а затем - в hexadecmal формат, но в метаданных почему-то стоит cp1251.
1) убрал из оператора create table все упоминания collate cp1251_bin
2) изменил в нем же DEFAULT CHARSET=utf8
3) импортировал дамп в PMA (указав кодировку utf8)
4) экспортировал дамп, убрав вывод полей в hexadecimal и поставив режим совместимости MYSQL40
5) поглядел результат - понравилось. :)
6) дописал руками оператор SET CHARACTER SET 'cp1251' в начало дампа

(это если убрать пару неудачных попыток импорта - экспорта)

  Ответить  
 
 автор: Dimonus   (13.02.2009 в 11:38)   письмо автору
 
   для: Trianon   (13.02.2009 в 11:18)
 

За исправленный дамп огромное спасибо, но хотелось бы понять принцип, как Вы это сделали. Хотелось бы научиться и не задалбывать окружающих.

  Ответить  
 
 автор: Trianon   (13.02.2009 в 11:18)   письмо автору
3 Кб
 
   для: dimonus   (13.02.2009 в 10:51)
 

Вот Ваш дамп исправленный.
в Кодировке cp1251 (если импортировать через phpMyAdmin - это нужно будет указать при импорте)

  Ответить  
 
 автор: dimonus   (13.02.2009 в 10:51)   письмо автору
25.4 Кб
 
   для: Trianon   (13.02.2009 в 08:56)
 

Вот дамп таблицы, который отдал интернетовский phpAdmin. Там есть немного русских букв не в дампе. Не получается просмотреть их у меня ничем.

Вариантов получения другого дампа с сервера видимо нет. Там нет возможности вывести данные как-то иначе не меняя настроек сервера. А менять настройки боязно.

Не подскжете что за кодировка? Может знакома проблема?

  Ответить  
 
 автор: Trianon   (13.02.2009 в 08:56)   письмо автору
 
   для: Dimonus   (13.02.2009 в 08:09)
 

Если я в эксплорере устанавливаю utf8 принудительно, и вижу данные нормально, значит экспорт и импорт прошел в utf8 и причем исправно прошел. Так?

Нет. Сервер может выдавать utf8-данные в полном убеждении, что на самом деле выдает 1251.

Смотрите дамп.

  Ответить  
 
 автор: Dimonus   (13.02.2009 в 08:09)   письмо автору
 
   для: Trianon   (13.02.2009 в 01:30)
 

Переделал все еще раз.
Создал базу вручную. Указал utf8.
Затем импортировал таблицу.
Кракозябры остались.

character_set_client | cp1251
character_set_connection | cp1251
character_set_database | utf8
character_set_filesystem | binary
character_set_results | cp1251
character_set_server | utf8
character_set_system | utf8
character_sets_dir | \usr\local\mysql5\share\charsets\

Я одного не пойму. Если я в эксплорере устанавливаю utf8 принудительно, и вижу данные нормально, значит экспорт и импорт прошел в utf8 и причем исправно прошел. Так? Следовательно если включив в эксплорере cp_1251 я вижу кракозябры, то не работает конвертация utf8 -> cp1251. Так?

  Ответить  
 
 автор: Trianon   (13.02.2009 в 01:30)   письмо автору
 
   для: dimonus   (13.02.2009 в 01:29)
 

я ж говорю - базу криво импортировали.

Вернее - при создании не указали (либо непосредственно после создания - перед созданием таблиц в ней- не изменили) кодировку на utf8.

  Ответить  

Сообщения:  [1-10]   [11-15] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования