Moin,
ich generiere ein Formular, das Daten für einen (UTF-8) Feed entgegennimmt per CGI-Modul, gesetzt ist:
$cgi->header(-charset => 'UTF-8'),
$cgi->start_html(-encoding => 'UTF-8'),
Das verarbeitende Script schreibt per
open my $test, ">:utf8", $file;
Es gibt aber offensichtlich trotzdem Probleme (Umlaute), die hinterher nicht korrekt dargestellt werden. Nun weiß ich allerdings nicht, wo sonst noch UTF-8-Encoding gesetzt werden könnte.
3 Ansätze hätte ich:
- Täusche ich mich, oder ist es tatsächlich nicht vorgesehen, via CGI-Modul für Formulare die übliche Option "accept-charset" zu setzen? In der manpage steht nichts dazu drin und der Versuch, es wie alle anderen Optionen zu setzen
$cgi->start_form(-method => 'post',
-accept-charset => 'UTF-8',
schlägt fehl. Gibt es da noch einen anderen Weg?
-
Das Schreiben per ">:utf8" klappt nicht wirklich- wie ließe sich das überprüfen?
-
Schließlich bestätigte sich noch einer der elenden Verdachtsmomente: Das verarbeitende Script ist nicht in UTF-8 gespeichert (use utf8 ist gesetzt).
Also habe ich es auf die Schnelle per Windows-Editor so gespeichet/BOM gesetzt, das führt aber beim Test zu Error 500- das log sagt:
(8)Exec format error
Tja-
falls wer einen Tipp hätte...
Beste Grüße
Zaphod