Portál AbcLinuxu, 9. května 2025 21:39

Dotaz: Nefunkcny include v XSL v PHP

mirec avatar 17.6.2007 00:27 mirec | skóre: 32 | blog: mirecove_dristy | Poprad
Nefunkcny include v XSL v PHP
Přečteno: 242×
Odpovědět | Admin
Mam problem s vlozenim xsl suboru do ineho suboru pomocou PHP.
Nacitavam takymto sposobom :
$xsl=DOMDocument::load("style.xsl");
Po nacitani pridavam include
$inc =$xsl->createElement("xsl:include");
$stylesheet = $xsl->getElementsByTagName('stylesheet')->item(0);			$inc->setAttribute("href","modules/XSL/style.xsl");
$stylesheet->appendChild($inc);
Transformacia prebieha vo funkcii transform, vyzera asi takto:
function transform(&$DOMxml,&$DOMxsl,&$out)
{
	$xsl = new XSLTProcessor();
	$xsl->importStyleSheet($DOMxsl);
	$out=$xsl->transformToXML($DOMxml);
}
PHP mi vyhadzuje chybu Warning XSLTProcessor::importStylesheet() [function.XSLTProcessor-importStylesheet]: Found a top-level element xsl:include with null namespace URI.

Ak ale nacitam samotny styl znovu funguje vsetko vporiadku.
function transform(&$DOMxml,&$DOMxsl,&$out)
{
	$xsl = new XSLTProcessor();
	$DOMxsl = DOMDocument::loadXML($DOMxsl->saveXML());
	$xsl->importStyleSheet($DOMxsl);
	$out=$xsl->transformToXML($DOMxml);
}
Da sa to obist aj elegantnejsim sposobom ako prevadzat cele xml do stringu a potom ho znovu nacitavat a prevadzat do xml?
LinuxOS.sk | USE="-fotak -zbytocnosti -farebne_lcd +vydrz +odolnost +java" emerge telefon
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

mirec avatar 17.6.2007 09:40 mirec | skóre: 32 | blog: mirecove_dristy | Poprad
Rozbalit Rozbalit vše Re: Nefunkcny include v XSL v PHP
Odpovědět | | Sbalit | Link | Blokovat | Admin
Opravene, som lama, stacilo zmenit
$inc =$xsl->createElement("xsl:include");
na
$inc =$xsl->createElementNS("http://www.w3.org/1999/XSL/Transform","xsl:include");
LinuxOS.sk | USE="-fotak -zbytocnosti -farebne_lcd +vydrz +odolnost +java" emerge telefon

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.