Avatar billede rzj Nybegynder
04. marts 2003 - 08:42 Der er 1 kommentar og
2 løsninger

acceptér HTML elementer ved XSLT?

Hej E's

Jeg ved ikke lige hvilken kat. dette spg. skal placeres i, så nu bliver det her.

Jeg er ved at udvikle et lille CMS i PHP. Jeg trækker unik data ud fra DB og laver det til XML (pakker det ind i XML elementer).
Dernæst laver jeg XSLT vhja. Sablotron (PHP modul). Det er funky nok, men problemet opstår når en admin indtaster html-elementer i teksten. Disse forstår XML jo også som XML og derfor bliver det ikke transformeret i XSL stylesheet. Et eksempel:
<artikel>
<overskrift>Dette er en overskrift</overskrift>
<content>Dette er en text fra DB og her er det <b>fremhævede</b> som admin har indtastet</content>
</artikel>

I ovenstående har en admin/bruger indtastet <b> elementer omkring noget der så gerne skulle være fed, men det bliver jo ikke processeret af mit XSL.

Så er her kommer spg:
Skal jeg virkeligt lave et XSL der tager højde for ALLE html-elementer eller findes der en måde at lagre html-elementer (e.g. htmlentities() el.lign) i et format så XML regner det som rent tekst?

Jeg forestiller mig at man vhja. PHP kan lave HTML-elementer om til unicode eller lign. ved at bruge htmlentities() og derved fremstår de ikke som rene elementer men som mærkelige tegn. Når man så præsentere teksten i browseren laver man de mærkelige tegn om til HTML-elementer som klienten/browseren fortolker?

Kan man det? Og hvis ja, hvordan?
Hvis nej, hvad er alternativet?

/raz
Avatar billede medions Nybegynder
04. marts 2003 - 08:57 #1
Lav et script der erstatter < med &gt; og > med &lt;
Så skulle det gerne spille...

//>Rune
Avatar billede swaxi Nybegynder
04. marts 2003 - 09:51 #2
du kunne bruge rawurlencode() før du sætter ind og rawurldecode() når du trækker data ud (inden du echo'er) ...
Avatar billede medions Nybegynder
06. marts 2003 - 10:37 #3
Thx 4 Poinz

//>Rune
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester