Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Вебмастеру (http://forum.oszone.net/forumdisplay.php?f=22)
-   -   XML parser error : not well-formed (invalid token) (http://forum.oszone.net/showthread.php?t=82940)

FADE 21-04-2007 20:04 577675

XML parser error : not well-formed (invalid token)
 
есть шаблон:

PHP код:

<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

и

PHP код:

<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 577690

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?

FADE 21-04-2007 22:45 577749

Vlad Drakula
Цитата:

вы уверены что у вас исходные шаблон в правильной кодировке?
что имеется ввиду?

Цитата:

вы уверены что процессор подгружает шаблон исходя из правильной его которовки? может он рассчитывает что шаблон в UTF-8?
а как в этом убедится? использую php 4

Vlad Drakula 21-04-2007 23:17 577761

FADE
Цитата:

что имеется ввиду?
существует много разных кодировок текста, большенство из них совпадают в английской части алфовита, а во в русской могут сильно отличаться!

Цитата:

а как в этом убедится? использую php 4
посмотреть какая кодировна прописана по дефолту в настройках

FADE 22-04-2007 00:09 577786

1 - редактор файлов zend studio - кодировка win1251 если это интересует
2 - _SERVER["MM_CHARSET"] CP1251 в хедоре апач отдает вин1251

еще доводы?:)
...(

Vlad Drakula 22-04-2007 01:18 577803

FADE
заголовок XSL шаблона?

FADE 22-04-2007 02:02 577818

Vlad Drakula

PHP код:

<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 578274

FADE
а где первая строчка вашего шаблона?
вы привели вторую и третью!

FADE 23-04-2007 14:46 578368

Vlad Drakula вот так выглядит мой шаблон xsl:

PHP код:

<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 578381

FADE
я так и думал... любой нормальный парсер быдет думать что он в UTF-8...
где заголовок файла!!!
XSL файл это такоже XML как и все остальное, у него обязан быть заголовок иначе парсер будет считать что он в UTF-8!!! (читаем стандарты!!!)

FADE 24-04-2007 04:19 578667

Цитата:

файла!!!
Цитата:

UTF-8!!! (читаем стандарты!!!)
Vlad Drakula спокойствие,
PHP код:

<?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 578730

FADE
я же писал что method="xhtml" - нету в XSL 1.0
а остальное вроде правильно только нужно действительно проверить что там windows-1251


Время: 02:45.

Время: 02:45.
© OSzone.net 2001-