1

Тема: Загружаю инфу из XML ... Проблема с кодировкой

Загружаю инфу из XML ... Проблема с кодировкой
История такова ...
1. Из 1С выгружаю ифну в XML UTF8
2. Загружаю в MySQL (cms joomla 1.5.7 + virtuemart + joomfish) при помощи php скрипта (скрин прикреплен)
Подозреваю конвертацию
product_desc = iconv("UTF-8", "windows-1251", $element->product_desc);

Пробовал без конвертации, пробовал другие конвертации ... положительного результата не получил.
3. В базе каракули ... если вводить значение в ручную ... естественно все отображается нормально.
4. В Фронтеде ... то же самое
5. Когда открываю стр. товара ... наименование в порядке ... только в title браузера кривое

2

Re: Загружаю инфу из XML ... Проблема с кодировкой

wmaster
Несколько не понял. XML данные в utf8 загружаются в MySQL с помощью какого-то скрипта, который сперва перекодирует в cp1251 и затем вставляет в таблицы?
1) Какая кодировки таблиц?
2) Какая используется кодировка на страницах сайта?
3) Что выводит SQL запрос:
SHOW GLOBAL VARIABLES LIKE 'char%';
4) Собственно данные в XML файле находящиеся в utf8, в текстовом редакторе выглядят нормально?

3 (изменено: wmaster, 2008-12-04 23:12:25)

Re: Загружаю инфу из XML ... Проблема с кодировкой

Сделал несколько скринов ...
http://wmaster.site90.com/1.jpg
http://wmaster.site90.com/2.jpg
http://wmaster.site90.com/3.jpg
Скрипт пхп раньше загружал в mysql базу для joomla 1.0 (наверное база была cp1251) ....  я переделал ... теперь загружаю в mysql (joomla 1.5.7 utf8) ... и вот никак не пойму как правильно передать данные
ниже Серверные переменные и настройки (xampp)
http://wmaster.site90.com/4.jpg
Результат запроса SHOW GLOBAL VARIABLES LIKE 'char%';
http://wmaster.site90.com/5.jpg

Подскажите какие кодировки мне использовать? ; желательно максимум изменений в моём пхп ... так как на хосте неизвесно каккие паоаметры будут доступны ....
Думаю на все вопросы ответил ... за ранее благодарен ... уже несколько дней лихорадочно пытаюсь ... результат 0

4

Re: Загружаю инфу из XML ... Проблема с кодировкой

wmaster
Причина крякозябов в неверной кодировке соединения с MySQL, у вас она стоит в latin1.
Остался последний вопрос - у вас есть доступ к конфигурационному файлу MySQL my.ini?
Если доступ есть, то добавьте в раздел [mysqld] строку:
init-connect="SET NAMES cp1251"

Это установит, глобально, кодировку соединения с MySQL в cp1251.

5 (изменено: wmaster, 2008-12-05 12:44:10)

Re: Загружаю инфу из XML ... Проблема с кодировкой

ok попробую ...
--------------------
Добавил в my.cnf ... так понимаю после этого character_set_connection должен быть cp1251 ??? он не менялся ... загрузил данные ... без результатов ....

6

Re: Загружаю инфу из XML ... Проблема с кодировкой

wmaster
MySQL перезагрузили?
Как вы смотрите character_set_connection? Используйте запрос SHOW GLOBAL VARIABLES LIKE 'char%';

7

Re: Загружаю инфу из XML ... Проблема с кодировкой

Hanut сказал:

wmaster
MySQL перезагрузили?
Как вы смотрите character_set_connection? Используйте запрос SHOW GLOBAL VARIABLES LIKE 'char%';

Тока недавно перезагрузил .... результат тот же ... character_set_connection проверяю запросом ...

8

Re: Загружаю инфу из XML ... Проблема с кодировкой

wmaster
Конфигурационный файл находится в каталоге xampp/mysql? Вы уверены, что редактируете тот файл, который подгружается?

9

Re: Загружаю инфу из XML ... Проблема с кодировкой

да 100% ... могу прислать ... 
а может запросом изменить этого параметра ???

10

Re: Загружаю инфу из XML ... Проблема с кодировкой

wmaster
Если директива прописана - она не может не работать.

Можно запросом. Ищите во всех скриптах вызов функции mysql_connect и сразу после нее добавьте строку:
mysql_query('SET NAMES cp1251');

11

Re: Загружаю инфу из XML ... Проблема с кодировкой

big_smile:)  огромное человеческое спасибо!!!!!!!!!!!!!!!!! заработало !!!!!!!!!!!!!! РЕСПЕКТ ВАШЕМУ ФОРУМУ