Показать полную графическую версию : XML parser error : not well-formed (invalid token)
есть шаблон:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xhtml" encoding="windows-1251" indent="yes"/>
<xsl:template match="/">
<xsl:text disable-output-escaping="yes"><![CDATA[любое русское слово]]></xsl:text>
</xsl:template>
</xsl:stylesheet>
и
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xhtml" encoding="windows-1251" indent="yes"/>
<xsl:template match="/">
<xsl:text>любое русское слово</xsl:text>
</xsl:template>
</xsl:stylesheet>
при использовании любого из шаблонов php отдает такую ошибку:
Warning: Sablotron error on line : XML parser error : not well-formed (invalid token) in on line
стоит убрать русские символы из шаблона, все работает нормально.. в чем проблема, почему не воспринимаются русские символы, или надо както подругому их писать?*
Vlad Drakula
21-04-2007, 20:51
1)
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xhtml" encoding="windows-1251" indent="yes"/>
по стандарту в XSL 1.0 нету method="xhtml" есть только method="html"
2) вы уверены что у вас исходные шаблон в правильной кодировке?
3) вы уверены что процессор подгружает шаблон исходя из правильной его которовки? может он рассчитывает что шаблон в UTF-8?
Vlad Drakula вы уверены что у вас исходные шаблон в правильной кодировке?
что имеется ввиду?
вы уверены что процессор подгружает шаблон исходя из правильной его которовки? может он рассчитывает что шаблон в UTF-8?
а как в этом убедится? использую php 4
Vlad Drakula
21-04-2007, 23:17
FADE
что имеется ввиду?
существует много разных кодировок текста, большенство из них совпадают в английской части алфовита, а во в русской могут сильно отличаться!
а как в этом убедится? использую php 4
посмотреть какая кодировна прописана по дефолту в настройках
1 - редактор файлов zend studio - кодировка win1251 если это интересует
2 - _SERVER["MM_CHARSET"] CP1251 в хедоре апач отдает вин1251
еще доводы?:)
...(
Vlad Drakula
22-04-2007, 01:18
FADE
заголовок XSL шаблона?
Vlad Drakula
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xhtml" encoding="windows-1251" indent="yes"/>
путь к файлу пишу в xslt_process()
что именно может выззывать подоюную ошибку?..
Vlad Drakula
23-04-2007, 11:30
FADE
а где первая строчка вашего шаблона?
вы привели вторую и третью!
Vlad Drakula вот так выглядит мой шаблон xsl:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xhtml" encoding="windows-1251" indent="yes"/>
<xsl:template match="/">
<xsl:text>любое русское слово</xsl:text>
</xsl:template>
</xsl:stylesheet>
Vlad Drakula
23-04-2007, 15:07
FADE
я так и думал... любой нормальный парсер быдет думать что он в UTF-8...
где заголовок файла!!!
XSL файл это такоже XML как и все остальное, у него обязан быть заголовок иначе парсер будет считать что он в UTF-8!!! (читаем стандарты!!!)
файла!!!
UTF-8!!! (читаем стандарты!!!)
Vlad Drakula спокойствие,
<?xml version="1.0" encoding="windows-1251"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xhtml" encoding="windows-1251" indent="yes"/>
<xsl:template match="/">
<xsl:text>любое русское слово</xsl:text>
</xsl:template>
</xsl:stylesheet>
так это ты имеешь ввиду?
так - валидный кусок кода?
Vlad Drakula
24-04-2007, 10:34
FADE
я же писал что method="xhtml" - нету в XSL 1.0
а остальное вроде правильно только нужно действительно проверить что там windows-1251
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.