Forum Webscript.Ru
Программирование => PHP => Тема начата: sky_diver от 07 Апреля 2005, 17:27:58
-
Приветствую всех.
Может кто уже решал похожую проблему, то подскажите пожалуйста. Записываю в mysql русский текст. Кодировка базы latin1. Забираю данные из базы и печатаю в HTML - нет проблем - текст виден хорошо (win-1251). При просмотре в notepad - вместо русского - коряво все.. Но это устраивало до тех пор, пока не стал парсить xml. Тот же русский текст пихаю в xml и пытаюсь парсить - ругается
Sablotron error on line 102: XML parser error 7: mismatched tag
Пробую заменить текст на английский - проблем нет..
Как побороть такую ошибку?
-
кодировка базы никакого значения не имеет.
судя по всему, ты перед записью в базу, текст свой корявишь.
-
Ок. Проверил. Дейстивтельно кодировка базы не причем... Это хорошо! Но! Написал про в тэг Русский - и все - обламывается. Меняю там же "Русский" на "English" - ошибок нет.. Что это может быть?
-
да и еще.. Некотороые русские буквы все же пролазят.. например взял "вв" - получил после парсера квадратик :-) Может где парсеру можно чего сказать?..
-
может, в заголовке хмл файла кодировку указать?
-
стоит
а можешь привести пример рабочего кода с русскими буквами внутри тега? Шаблон, xml и xslt_process.
Может я чего не так обрабатываю..
-
никогда не занимался такой глупостью, как обработка xml на пхп :-)
разве что - RSS парсил.
может, кто другой приведёт
-
похоже, еще немного и я откажусь от xml и переделаю все под обычный php.
-
sky_diver
Был тот же глюк.
Решал только конвертацией в UTF8 и русского, и всех шаблонов.
Похоже, глючил пхп.
-
2 CGVictor: Спасибо! Попробовал конвертацию iconv("CP1251","UTF-8") для русского текста в xml. В шаблоне xsl оставил 1251. Конвертация теперь проходит успешно. Стоит ли менять что-то еще? например в шаблоне 1251 заменить на UTF-8?
-
sky_diver
Я-то все менял, вроде как совместимость :)
Хотя, если по-умному, то и надо менять. Так правильнее.
-
Спасибо всем. Все работает. :-)