Никак не получается решить проблему со скриптом, который заносит из выгруженных в xml данных 1С в базу MySQL у хостера. Пробую так:
$nm = iconv("WINDOWS-1251", "UTF-8", $element['NAME']);
получаю (на примере одной записи):
***DUP инструРС?ент для Р С?аникюра 3-0071 блист
пробую так:
$nm = iconv("", "UTF-8", $element['NAME']);
получаю:
***DUP
далее по-русски должно быть но он просто отбрасывается.
далее пробую так (уже без какой-либо обработки):
$nm = $element['NAME'];
получаю:
***DUP инструмент для маникюра 3-0071 блист
Такое впечатление, что iconv лишь проходит второй раз делая из UTF-8 еще раз UTF-8, удлиняется строка с крякозябрами. Но никак не пойму, что делать. Подскажите, плиз.
Спустя 3 минуты, 44 секунды (8.11.2010 - 16:59) Sanchopansa написал(а):
Проверь кодировку БД
Спустя 8 минут, 36 секунд (8.11.2010 - 17:08) sivsoft написал(а):
MySQL-кодировка: UTF-8 Unicode (utf8)
Сопоставление соединения с MySQL: utf-8_general_ci
В таблицах сравнение: cp1251_general_ci
Что не так?
Сопоставление соединения с MySQL: utf-8_general_ci
В таблицах сравнение: cp1251_general_ci
Что не так?
Спустя 4 часа, 53 минуты, 48 секунд (8.11.2010 - 22:02) sivsoft написал(а):
разобрался - получается следующее simplexml_load_file получает строки и переводит в UTF-8, после надо UTF-8 перевести с помощью iconv в windows-1251, т.к. в таблицах стоит такое соответствие для русского языка.
Мда, за simplexml_load_file не знал, что в UTF-8 переводит...
Мда, за simplexml_load_file не знал, что в UTF-8 переводит...
Спустя 5 минут, 43 секунды (8.11.2010 - 22:07) Sanchopansa написал(а):
Цитата |
В таблицах сравнение: cp1251_general_ci |
поменяй в таблицах сравнение на utf-8 и все будет гуд