login  Naam:   Wachtwoord: 
Registreer je!
 Forum

XSLT

Offline Fenrir - 22/06/2005 19:32 (laatste wijziging 22/06/2005 20:18)
Avatar van FenrirPHP expert Wat is XSLT?
XSLT is een template-taal voor xml-bestanden. Als je gewone htmlpagina's maakt, dan moet je steeds de tekst op de pagina in de layout zetten. Dus je krijgt steeds meer .html bestanden waar de layout én de tekst in staat. Als je nu de layout wilt veranderen moet je alle bestanden aanpassen. Met xslt heb je dit gescheiden: je hebt xml-bestanden met alleen de data (tekst) die op de pagina moet komen, en je hebt een .xsl bestand met de layout. Zo kun je dus nieuwe pagina's toevoegen door .xml bestanden te maken. Je hoeft de layout dus niet telkens te kopieeren.

Tutorial: http://www.w3schools.com/xsl/
Tutorial dmv voorbeelden: http://www.zvon...tents.html

Problemen met XSLT
De meeste browsers ondersteunen het, dus ook Firefox (duh), en Internet Explorer (!). Dus dat is geen probleem. Ik weet niet of zoekmachines het ook ondersteunen. Want zoekmachines hebben aan .xml bestanden niet veel, want ze kunnen daaraan niet zien wat de data betekent. Dus ze moeten net als de browsers de data omtoveren naar html, dmv xslt. Ik weet niet of ze dat ook doen, dus als jij dat weet, reageer!

Sites met XSLT
Heeft iemand al een site gemaakt met xslt?
In theorie werkt het heel goed, maar wat is de praktijk? Ik weet het niet, dus iedereen die er ervaring mee heeft, wat zijn de voor- en nadelen? Ga je dit vaker gebruiken?

Vragen
Als je nog vragen hebt over XSLT, post ze dan hier.

14 antwoorden

Gesponsorde links
Offline nemesiskoen - 22/06/2005 20:23
Avatar van nemesiskoen Gouden medaille

PHP expert
Ik heb zelf geen ervaring.
Heb al wel een keer gelezen (in een topic hier denk ik) dat het de nieuwe standaard wordt (jouw post?).
Ik ben zeker wel geïnteresseerd:).
En ga het na de examens (morgen) is een keer bekijken.
Hopelijk kan jij (of een ander lid die hier iets van af weet) een tutorial (basis?) hierover posten. Via W3 leer ik niet zo gemakeijk, maar voor zoiets heb ik het er wel voor over:).
Offline Fenrir - 22/06/2005 20:27 (laatste wijziging 23/06/2005 12:54)
Avatar van Fenrir PHP expert
Citaat:
Via W3 leer ik niet zo gemakeijk,
Nee, dat is veel te lastig. Maar dit is w3schools, en dat vind ik zelf makkelijk te leren: http://www.w3schools.com/xsl/ Maar als je dat bedoelt is er altijd: http://www.zvon...tents.html

Citaat:
Hopelijk kan jij (of een ander lid die hier iets van af weet) een tutorial (basis?)
Ga ik nu aan beginnen. 
Edit: Tutorial gepost, maar moet nog gekeurd worden.
Murfy edit: done 
http://www.site...&cat=1
Offline Legolas - 23/06/2005 14:04 (laatste wijziging 23/06/2005 14:04)
Avatar van Legolas Onbekend In Firefox werkt het voorbeeld van de tutorial niet... ik ga ook een tutorial over XSLT schrijven:)

(ken er aardig wat van:D)
Offline Fenrir - 23/06/2005 14:22
Avatar van Fenrir PHP expert
Citaat:
In Firefox werkt het voorbeeld van de tutorial niet...
Bij mij toch wel hoor. Misschien doe je wat fout? Krijg je een xml-error?

Citaat:
ik ga ook een tutorial over XSLT schrijven
Goed! Maak er dan wel een die doorgaat waar deze tutorial stopt. Het is nogal onnodig om 2 dezelfde tutorials te hebben.
Offline Legolas - 23/06/2005 14:23 (laatste wijziging 23/06/2005 14:23)
Avatar van Legolas Onbekend @Fenrir:
ja natuurlijk...!
die van mij gaat over Loopen / Foreach
;-)

de error die ik krijg:
http://nixon.pro-rsoft.com/inhoud.xml
zie daar
Offline Fenrir - 23/06/2005 14:27 (laatste wijziging 23/06/2005 14:27)
Avatar van Fenrir PHP expert Dan betekent dat je host bestanden met een .xsl extensie niet verstuurt met het juiste mime-type. Werkt het wel gewoon via je harddisk?

Citaat:
die van mij gaat over Loopen / Foreach
Euhhm, dat is nou niet echt waar XSLT voor bedoeld is. Je maakt templates, en die horen bij tags. Alleen in enkele gevallen is foreach handig, maar je kunt toch echt beter eerst een andere tutorial maken over <xsl:template> en <xsl:apply-templates />
Offline Legolas - 23/06/2005 14:31
Avatar van Legolas Onbekend Okeej, dan doe ik het over apply-templates;-)
Offline MothZone - 23/06/2005 18:43
Avatar van MothZone PHP ver gevorderde even een vraagje, kan je mbv php (of iets anders) zorgen dat je de template kunt aanpassen naar een andere file?
want bij deze regel
  1. <?xml-stylesheet type="text/xsl" href="artikel.xsl"?>

Met php zal dat problemen geven vermoed ik, dus hoe kan dat?
Offline Fenrir - 23/06/2005 19:28
Avatar van Fenrir PHP expert Ja, dat probleem had ik ook. Je kunt het gewoon zo doen:
  1. <?php echo '<?xml-stylesheet type="text/xsl" href="artikel.xsl"?>'; ?>
Offline Legolas - 23/06/2005 19:43 (laatste wijziging 23/06/2005 19:43)
Avatar van Legolas Onbekend En je kunt hem ook gwoon met php vullen;-)
maareh... mijn tutorial is af, over apply-templates, alleen nog niet gekeurd
Offline Maarten - 23/06/2005 19:47
Avatar van Maarten Erelid Ja Legolas, we zijn nog aan het zoeken of je hem niet geript hebt 
Offline MothZone - 23/06/2005 20:13
Avatar van MothZone PHP ver gevorderde @fenrir: is onmogelijk, want:
1) de xml-parser denkt dat die eerste ?> van de xml-tag is, waardoor hij error geeft, php of niet
2) de extentie is .xml, en bij aanpassing naar .php geeft hij parse error omdat hij de xml-tag niet herkent
Offline Fenrir - 23/06/2005 20:17 (laatste wijziging 23/06/2005 20:17)
Avatar van Fenrir PHP expert @mothzone: nee, je doet het zo:

index.php:
  1. <?php echo '<?xml-stylesheet type="text/xsl" href="artikel.xsl"?>'; ?>


Dan werkt het toch gewoon? Misschien moet je wel nog een header('Content-Type: text/xml'); sturen.

Citaat:
1) de xml-parser denkt dat die eerste ?> van de xml-tag is, waardoor hij error geeft, php of niet
Nee, want dat wordt geparsed door php, dus ze komen niet in de xmlcode die de browser ontvangt.
Citaat:
2) de extentie is .xml, en bij aanpassing naar .php geeft hij parse error omdat hij de xml-tag niet herkent
Nee, hij geeft geen parse-error, want het staat tussen ' '.
:D
Offline MothZone - 23/06/2005 20:19
Avatar van MothZone PHP ver gevorderde ok, met die header() werkt het, thx
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.207s