Helge: mit xml, perl und uft-8 voll gegen die wand

hi ihr,
ich sitze in der patsche - vielleicht hat ja jemand _die_ idee? ;-)
ich schreibe ein perlscript, das daten (freien text) per
formulareingabe eingegennimmt, diese als xml-datei ablegt und
per XML::Parser wieder einliest (zwecks ausgabe, aber auch
nachtraeglichem bearbeiten). das script muss auf mehreren servern
laufen, die mit verschiedenen versionen von perl (von 5.00x bis
5.6.x), expat und XML::Parser ausgestattet sind, ohne dass ich
darauf einfluss nehmen kann - mit anderen worten, ich darf mich
immer am kleinsten nenner entlanghangeln. ;-)
jetzt bin ich ueber ein dummes problem gestolpert: XML::Parser
spuckt alles, was er aufgesogen hat, stoisch als utf-8 wieder
aus. macht ja nix, dachte ich, wenn die formularseiten auch
utf-8-codiert sind, landet in den xml-dateien ebenfalls nur
unicode, und alles ist gut ... stimmt auch, aber nur solange, wie
nicht jemand einen wirklich alten browser nimmt, der kein
unicode kann, und dort froehlich seine umlaute reinhackt. dieser
dumme browser (z.b. netscape 3, ja lacht nur, dieses script
laueft u.a. im universitaeren kontext, wo solche monster noch
auftauchen -) sendet seine daten als ascii bzw. ISO-8859, und
das script schreibt diesen ascii-quark in eine xml-datei, in
der ganz oben ganz deutlich 'utf-8' prangt => der parser verweigert
beim naechstenmal seinen dienst, weil die wellformedness dahin
ist. shit. die alternative, naemlich die xml-dateien gleich
als ISO-8859 laufen zu lassen, haut auch nicht hin: wenn sich
der parser den inhalt gegriffen hat, kommt wieder utf-8 beim
browser an, und beim zurueckschreiben landet unicode in einer
datei, die ISO zu sein meint => parser ist sauer.
je nach browser den richtigen zeichensatz zu spezifizieren
scheitert daran, dass man unmoeglich jeden browser abfangen
kann - aussdem muesste ich dann leute mit nicht-unicode-
faehigen browsern im regen stehen lassen, wozu ich kaltlaechelnd
bereit waere, aber: sowas geht nicht an der uni (nur so nebenbei:
bei uns wird immer noch der ns4 auf brandneuen rechnern
installiert, wegen der political correctness ...*seufz*), wie
so vieles anderes auch nicht :-).
also: gibt es den goldenen ausweg? ein script, das ISO in
unicode verwandelt und andersherum, ohne ein modul zu sein (das
ich nicht installieren darf)? den genialen trick?

viele gruesse

helge

  1. hi!

    also: gibt es den goldenen ausweg? ein script, das ISO in
    unicode verwandelt und andersherum, ohne ein modul zu sein (das
    ich nicht installieren darf)? den genialen trick?

    Das Forum hier enthält passende Routinen in seinem Source. Siehe dazu
    zum Beispiel folgendes Modul:
      http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/selfforum/selfforum-cgi/shared/Encode/Plain.pm?rev=1.7&content-type=text/vnd.viewcvs-markup

    Die Lizenz, unter der du das verwenden kannst:
      http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/selfforum/selfforum-cgi/LICENSE?rev=1.1&content-type=text/vnd.viewcvs-markup

    Viel Spaß. Ich hoffe, das hilft weiter... :)

    bye, Frank!

        1. Hallo Frank,

          Naja, hier ist ja viel Platz zum testen... :)

          So kommst Du doch noch in diesem Monat unter die ersten zehn der Vielposterstatistik ;-)

          Gruß
          Franz

          1. hi!

            Naja, hier ist ja viel Platz zum testen... :)
            So kommst Du doch noch in diesem Monat unter die ersten zehn der
            Vielposterstatistik ;-)

            Könnte knapp werden, es sei denn, man zählt die Postings aus dem
            "alten" Forum mit... :)

            bye, Frank!

            1. Hallo Frank!

              Könnte knapp werden, es sei denn, man zählt die Postings aus dem
              "alten" Forum mit... :)

              ...ach _deswegen_ soll ich das 'alte' Forum mit in die Datenbank einlesen... als ob du das nicht auch so schaffen würdest!

              Gruss,
               Carsten

              1. hi!

                Könnte knapp werden, es sei denn, man zählt die Postings aus dem
                "alten" Forum mit... :)
                ...ach _deswegen_ soll ich das 'alte' Forum mit in die Datenbank
                einlesen...

                Das hatte auch noch andere Gründe... ;)

                als ob du das nicht auch so schaffen würdest!

                Schwierig. Ich bin ja schwer beschäftigter Student im Dauerstress... :)

                bye, Frank!

        2. hi frank!

          Naja, hier ist ja viel Platz zum testen... :)

          hehe ... ;)

          http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/selfforum/selfforum-cgi/shared/Encode/Plain.pm?rev=1.7&content-type=text%2Fvnd.viewcvs-markup
          http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/selfforum/selfforum-cgi/LICENSE?rev=1.1&content-type=text%2Fvnd.viewcvs-markup

          das sieht doch sehr, sehr gut aus, danke!
          hm ... *ausprobier* ... :)
          ich geb laut, wenn bei mir wieder die zeichen in den browser
          purzeln, diesmal hoffentlich mit dem richtigen etikett! :)

          thx und bis dann

          helge

          1. hi frank!

            http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/selfforum/selfforum-cgi/shared/Encode/Plain.pm?rev=1.7&content-type=text%2Fvnd.viewcvs-markup
            http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/selfforum/selfforum-cgi/LICENSE?rev=1.1&content-type=text%2Fvnd.viewcvs-markup

            ich geb laut, wenn bei mir wieder die zeichen in den browser
            purzeln, diesmal hoffentlich mit dem richtigen etikett! :)

            getestet und fuer gut befunden ... nein, im ernst, das scheint
            ja wirklich hinzuhauen *staun* :)
            ich besitze jetzt also die gottgleiche faehigkeit, good old
            plaintext in utf-8 zu wandeln - letzte frage: hast du
            erfahrungen mit der zuverlaessigkeit dieses packages? gibt es
            irgendwelche (noch so unwahrscheinlichen) ausnahmen - dieses
            script ist u.a. fuer unsere -isten (roman-, german-, slav- etc) an
            einem geisteswissenschaftlichen fachbereich, die haben einen
            ganze sack voller eigenartigster zeichen ...?

            auf jeden fall vielen dank,
            viele gruesse

            helge

            ps.: die lizenz ist auch nicht uncool :)

            1. hi!

              hast du erfahrungen mit der zuverlaessigkeit dieses packages?

              Das Forum hier ist noch nie wegen dieses Moduls ausgefallen. Das sind
              alle Erfahrungen, die ich damit habe... ;)

              ps.: die lizenz ist auch nicht uncool :)

              Ist die Standard-Lizenz von u.a. Perl.

              bye, Frank!

              1. hi nochmal,

                hast du erfahrungen mit der zuverlaessigkeit dieses packages?
                Das Forum hier ist noch nie wegen dieses Moduls ausgefallen. Das sind alle Erfahrungen, die ich damit habe... ;)

                das war eigentlich genau das, was ich zu hoeren hoffte :))

                ps.: die lizenz ist auch nicht uncool :)
                Ist die Standard-Lizenz von u.a. Perl.

                eben. *g*

                vielen dank und gute nacht

                helge