getreidemuehlen
-


Hinweise


Antwort
 
LinkBack Themen-Optionen Thema durchsuchen Thema bewerten
Alt 08.08.2003, 00:56   #1
seb
TP-Veteran
 
Registriert seit: Jan 2002
seb bringt sich richtig einseb bringt sich richtig ein

Zwei Probleme mit XSL-Transformation


Ich habe mich gestern und heute 'spaßeshalber' ein bisschen mit der XSL-Transformation von XML zu XHTML beschäftigt - sowohl clientseitig mit den entsprechenden Funktionen vom IE6 und Mozilla als auch serverseitig über die PHP-API für den Sablotron XSLT-Prozessor.

Ersteres (browserseitig) funktioniert abgesehen von einem Problem ganz gut: Sobald irgendwo im XML ein '&' auftaucht, z.b. für '&', 'ü' usw., bricht sowohl der IE als auch Mozilla die Transformation mit der gleichen Fehlermeldung ab.
Beide bemängeln ein 'undefined entity' (Moz) bzw. 'eine nicht definierte Entität' (IE).
Das ganze kann z.b. hier bewundert werden.
Weiß jemand, was ich falsch mache und wie ich das los werde?

Die serverseitige Transformation scheitert schon in der Vorbereitung, nämlich beim Versuch, die XSLT-Extension zu aktivieren.

Wenn ich das Semikolon vor der Zeile

;extension=php_xslt.dll

in der php.ini entferne und Apache neu starte, beschwert er sich darüber, dass die Datei c:/php/extensions/php_xslt.dll nicht gefunden werden könne. Allerdings existiert sie an genau diesem Pfad
seb ist offline   Mit Zitat antworten


Alt 08.08.2003, 03:29   #2
Guest
 
Registriert seit: Aug 2002
Strogij hilft, wo's gehtStrogij hilft, wo's geht
Ich glaube mal, dass die Datei in den windows oder system32-Ordner kopiert werden soll (hab nicht ausprobiert), weil mit php4apache2.dll ist es so.. oder ich bin zu blau..
Strogij ist offline   Mit Zitat antworten
Alt 08.08.2003, 07:56   #3
TP-Moderator
 
Benutzerbild von Stuck Mojo
 
Registriert seit: Feb 2001
Ort: Helmstedt/Wolfsburg
Stuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKE
Moin !!

@Entitäten: Mich wunderts, dass du zich Entitys verwendest (sogar das ü), indenen Du die Entity-Nummern verwendest, anstelle des Entitynamens. DAS funktioniert nämlich Falls du dir aber trozdem nicht die Arbeit machen willst und bei jedem ö,ü,ä,ß,... die Entitynummer rauszusuchen, kannst du dir selber Entities "erstellen". Dazu musst du einfach einen Doc-Block zu deinem XML-Dokument hinzufügen:
Code:
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE dwarf_object [
  <!ENTITY nbsp "&#160;"> <!-- wirst du spätestens bei Sablotron brauchen -->
  <!ENTITY uuml "&#252;">
  <!ENTITY Uuml "&#220;">
]>
Oder du schreibst das ganze in eine externe DTD. Eine Liste der HTML-Entities gibts z.B. hier: http://www.w3schools.com/html/html_entitiesref.asp

@Sablotron:
Da kann ich auch nur raten:
1. XSLT benötigt Expat + Sablotron - Ist Expat (also die normale XML-Extension) schon eingebunden?
2. Kopier mal expat.dll, sablot.dll and iconv.dll aus dem ext.-Verz. in das WINDOWS\SYSTEM32 Verzeichnis.

Sollte dann funzen.

Gruss
Jan
Stuck Mojo ist offline   Mit Zitat antworten
Alt 08.08.2003, 13:04   #4
seb
TP-Veteran
 
Registriert seit: Jan 2002
seb bringt sich richtig einseb bringt sich richtig ein
Zitat:
Mich wunderts, dass du zich Entitys verwendest (sogar das ü), indenen Du die Entity-Nummern verwendest
Das war HTML Tidy - dieser Artikel wurde durch copy&paste aus der Textverarbeitung eingegeben, anschließend hab ich die Sonderzeichen automatisch umwandeln lassen.
Auch sonst tipp ich Texte immer 'normal' ein und lass die Maschinen die nervige Umwandlerei machen .

Bei 'festen' Ausgaben von den Templates achte ich natürlich auf die Sonderzeichen, allerdings benutz ich da immer &uuml; usw. - das &ouml;, über das er sich beschwert, gehört zum 'Vergrößern' Link eines Bild-Templates, das in den Artikel eingebunden ist ( http://www.gy-mi.de/index/artikel/presse/kunstscheune/ ).

Entitiynummern hab ich bisher nie benutzt, daher die unterschiedlichen Schreibweisen.

Gut - dann werd ich wohl alle Buchstaben-Entity-Codes in Zahlen ändern, falls mir das die bis jetzt eigentlich völlig sinnlose XML-Ausgabe wert ist.

Und mit Sablotron muss ich halt mal weiterprobiern - danke an euch beide für den Tip mit dem system32-Verzeichnis. Expat ist schon eingebunden. Was mich ein bisschen irritiert ist, dass die Fehlermeldung keine der drei Dateien betrifft, die du da nennst...naja, ma schaun.
seb ist offline   Mit Zitat antworten
Alt 08.08.2003, 15:08   #5
TP-Moderator
 
Benutzerbild von Stuck Mojo
 
Registriert seit: Feb 2001
Ort: Helmstedt/Wolfsburg
Stuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKE
Zitat:
Original geschrieben von seb
Was mich ein bisschen irritiert ist, dass die Fehlermeldung keine der drei Dateien betrifft, die du da nennst...naja, ma schaun.
Zitat:
Note to Win32 Users: In order to enable this module on a Windows environment, you must copy several files from the DLL folder of the PHP/Win32 binary package to the SYSTEM32 folder of your windows machine. (Ex: C:\WINNT\SYSTEM32 or C:\WINDOWS\SYSTEM32). For PHP <= 4.2.0 copy sablot.dll and expat.dll to your SYSTEM32 folder. For PHP >= 4.2.1 copy sablot.dll, expat.dll and iconv.dll to your SYSTEM32 folder.
-> www.php.net/xslt

Gruss
Jan
Stuck Mojo ist offline   Mit Zitat antworten
Antwort

  Aktuelles Thema
  TP Hilfe Forum > Web-Editoren & Coding > Traum-Dynamik
Zwei Probleme mit XSL-Transformation Zwei Probleme mit XSL-Transformation
« mailformular | problem mit datenbank, keine speicherung »

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 00:25 Uhr.

Powered by: vBulletin Version 3.7 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd. / Search Engine Friendly URLs by vBSEO 3.2.0 ©2008, Crawlability, Inc.
Traum-Projekt.com | Suchen | Archiv | Impressum | Kontakt | | | Nach oben |



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67