Hallo Geeks und Freaks :-)Ich hätte da ne Frage bezüglich XML::DOM::XPath (modul version 1.27) die mich langsam schon zum Wahnsinn treibt :-)
Die Frage betrifft die 2 Funktionen findvalue und findnodes_as_string.
Im Prinzip geht es um eine XML Datei deren Inhalt ich in einem Hash (%table_meldungen) speichere.....mit body, titel usw. als key und als value eben den Content von dem Jeweiligen html-Tag
z.B bei <Titel><p>blahblah</p></Titel>
speichere ich als key Titel und als value eben das <p>blahblah</p>
Bei der Speicherung in den hash tue ich alles bis auf body (da liegt auch das Problem) mit der Funktion findvalue und den Rückgabewert mit decode_entities Speichern (siehe unten)....
den value von body behandle ich aber mit der Funktion findnodes_as_string weil ich die html tags des values auch speichern will (zwecks Formatierung)...
Dabei sind die umlaute z.B. das ä wie folgt im xml codiert: ü
Komisch ist, dass die Funktion findvalue mir bei ü korrekt das ä darstellt, jedoch bei findnodes_as_string total komische Zeichen enstehen....
Ich habe das ganze auch schon ohne decode_entities probiert -> mit dem selben resultat....
tatsache ist, dass wenn ich den body teil auch mit findvalue behandle, die umlaute vollkommen korrekt dargestellt werden.....
Was macht findnodes_as_string anders als findvalue????
Kann es sein, dass es einen Parameter gibt um findnodes_as_string mit dem selben encoding aufzurufen wie findvalue ?
#diese Variante haut mir die umlaute zusammen
$table_meldungen{'body'}=decode_entities($document->findnodes_as_string('/BODY/TEXT'));
#diese Variante stellt die Umlaute korrekt dar....
$table_meldungen{'body'}=decode_entities($document->findvalue('/BODY/TEXT'));
Würde mich über jede Hilfe sehr freuen....bin schon am Rande des Wahnsinns......
Danke im Voraus.....
lg
Datum: 23.05.2005-12:56
