Toon posts:

[XML]kan xml bron niet weergeven

Pagina: 1
Acties:

Verwijderd

Topicstarter
ik heb een raar probleem. ik genereer xml met een php bestand, zonder enige transformatie (geen xsl bestand erbij). het bestand heeft dus niet .xml, maar .php als extensie. in het bestand wordt de xml netjes gedeclareerd met de nodige tags (allemaal volgens de w3c standaard).

als je dit bestand kijkt me IE6 bekijkt zie je netjes de "kale" xml (alle nodes, childs etc.) wil je vervolgens de bron bekijken dan krijg ik een melding: "Het XML bronbestand kan niet worden weergegeven."
nadat ik de xml transformeer tot xhtml, wordt er een mooie xhtml pagina weergegeven, maar weer als ik de bron wil bekijken, dezelfde foutmelding van IE6.

dit terwijl de xml echt helemaal well formed is. om dit te controleren, open ik hetzelfde in Mozilla. het eigenaardige van Mozilla is dat hij geen nodes en childs laat zien maar gewoon plain output (alles achterelkaar en zonder tags), maar goed je kan wel de source controleren of de xml well formed is (en dat is ie).

geef ik het bestand wel de .xml extensie dan geeft Mozilla de xml wel juist weer. en in IE6 geeft opeens wel de bron goed weer. dit terwijl het EXACT hetzelfde bestand gaat, alleen de extensie is nu .xml ipv .php

nou kan je dit oplossen door .xml ook te laten parsen door php, maar dat wil ik niet.

iemand een idee waarom dynamisch gebakken xml in een php bestand zo raar doet?

  • whoami
  • Registratie: December 2000
  • Laatst online: 10:21
Waarom heeft dat xml-bestand niet de extensie xml maar php? :?

https://fgheysels.github.io/


Verwijderd

Topicstarter
hoe kan je anders dynamisch xml vormen? zie http://www.tweakers.net/turbotracker.dsp dat is ook xml en toch dynamisch gevormd. en daar kan je wel gewoon de source bekijken

  • Delpix
  • Registratie: September 2001
  • Laatst online: 27-11-2021

Delpix

Alanis Fan

Verwijderd schreef op 16 oktober 2002 @ 14:51:
...

als je dit bestand kijkt me IE6 bekijkt zie je netjes de "kale" xml (alle nodes, childs etc.) wil je vervolgens de bron bekijken dan krijg ik een melding: "Het XML bronbestand kan niet worden weergegeven."
nadat ik de xml transformeer tot xhtml, wordt er een mooie xhtml pagina weergegeven, maar weer als ik de bron wil bekijken, dezelfde foutmelding van IE6.

...
Dat de source niet kan worden weergegeven heb ik ook met *xml*.php documenten. Het is wellicht een eigenschap van msie

...beter bekend als AMFan


Verwijderd

Topicstarter
het gekke is als ik een aantal xml bestanden gewoon de extensie php geef (even wat quotes escapen) dan kan ik wel gewoon de source bekijken. zodra het echt uit een db komt met evt url parameters, pas dan heeft IE6 er moeilijkheden mee.
heel vaag...

  • zoepercavia
  • Registratie: September 2001
  • Laatst online: 26-12-2025
heb je het contenttype goed staan?
je moet in de headers zetten dat het 'text/xml' is, anders weet IE niet wat het is...

Panacea.NL als je geinteresserd bent in IT en Geneeskunde!


Verwijderd

Topicstarter
mmm dat heb ik niet gedaan, want ik zou niet weten hoe dat moet. ik zal het eens uitzoeken hoe dat zit...

maar het gekke is dan nog steeds dat ik wel de source kan bekijken van een statische xml met een willekeurige extensie. maar zodra de xml geparst wordt maakt het niet uit welke extensie er wordt gegeven, de source kan opeens niet meer worden bekeken (in IE6)

  • Rense Klinkenberg
  • Registratie: November 2000
  • Laatst online: 09-08 19:19
Zoals zoepercavia al zei, moet je zorgen dat het content-type goed aangegeven wordt.
PHP:
1
header('Content-type: text/xml');
Voor je eerste output plaatsen moet werken.

Verder is het ook belangerijk dat je op de encodings let. De domxml extensie van php gooit niet standaard een utf8_encode over de namen van de nodes die je aanmaakt. Het is dus aan te bevelen om dat handmatig te doen. Wanneer je dat doet moet je ook zorgen dat het document dat je naar de browser stuurt ook aangeeft welke encoding is gebruikt, door gebruik te maken van de 2 optionele parameters van dump_mem() (dus waarschijnlijk ->dump_mem(false, 'utf-8');)
Pagina: 1