Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Потеря данных при кодировке, как решить? 
V
    Опции темы
donion
Дата 18.5.2010, 23:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 77
Регистрация: 18.12.2007
Где: Запорожье

Репутация: нет
Всего: нет



Приветствую,

Есть БД из которой забираються данные(движок wordpress):

Код

show variables like '%char%':
character_set_client    utf8
character_set_connection    utf8
character_set_database    utf8
character_set_filesystem    binary
character_set_results    utf8
character_set_server    latin1
character_set_system    utf8
character_sets_dir    /usr/local/share/mysql/charsets/


Есть БД куда нужно данные закинуть (движок vbulletin):
Код

character_set_client    utf8
character_set_connection    utf8
character_set_database    utf8
character_set_filesystem    binary
character_set_results    utf8
character_set_server    latin1
character_set_system    utf8
character_sets_dir    /usr/local/share/mysql/charsets/


Заливаю данные - в базе все видно хорошо. 
Но, в самой базе вся информация(текст) лежит в кодировке iso-8859-1 или cp1252(не смог определить).

На выходе из базы соответственно та информация, которую я залил - отображается ???????? (в вопросиках).

Ну и вопрос:
Как мне залить данные в iso-8859-1 или cp1252? 

Как делал:
Код

$toDB = utf8_encode($array[0]->post_title);


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

Код

$array[0]->post_title = iconv('iso-8859-1','utf-8',$array[0]->post_title);

//или

$array[0]->post_title = iconv('cp1252','utf-8',$array[0]->post_title);


результат первого: данные теряются, некоторые буквы отображаются в ромбах с вопросах, например "р", "с".
результат второго: данные теряются, обрезаются половина слова/предложения, в конце добисывается ромб с вопросом.


Может чего-то не дочитал, тыкните ссылкой или объясните если знаете.







PM MAIL   Вверх
donion
Дата 20.5.2010, 10:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 77
Регистрация: 18.12.2007
Где: Запорожье

Репутация: нет
Всего: нет



Так и есть - недочитал =)
latin1 = iso-8859-1

решение, при загрузке:
mysql_query("SET CHARACTER SET 'latin1'", $link);
mysql_query("SET NAMES latin1", $link);


PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0394 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.