hotti: cgi-Datenfluß

Beitrag lesen

hi,

Wieviel sind 4kB in Zeichen? Reichts für 4000 Stück?

Das hängt von der Kodierung ab. Bei einer 8-bit-Kodierung ist ein Zeichen == 1 Byte.

Du kriegst Deinen Input in UTF-8. Da gibt es Zeichen, die haben mehr als ein Byte, ein Umlaut hat 2 byte, das Eurozeichen hat 3 byte.

... Ich hab bisher alles in CSV gemacht - vom Gästebuch über Ersatzteilprogramme und sonstiges.

Wenn die Datei editierbar sein soll, darf es auch eine CSV-Datei sein.

Jetzt zum eigentlichen Geschehen:

Ich bastel gerade an einem Formular, das soweit ich das seh, clientseitig fertig ist. Link ist hier.

Sieht doch gut aus. Und UTF-8, auch gut!

Die Felder Story-Code, Titel, E-Mail und Spamschutz sind kein Problem. Ich bin nur unsicher, ob der eigentliche, lange Geschichtstext (max 4000 Zeichen), über cgi geht, oder nicht.

Natürlich geht das. Selbst wenn das alles 'ä's sind, sind das nur 8 kb ;)

Wenn Du utf-8 auch in der DB haben möchtest, gibt es Einiges zu beachten. Das Modul CGI kann ab einer bestimmten Version (muss nachgucken) die Eingaben als UTF-8-Strings liefern. Im Default kriegst Du natürlich auch UTF-8 aber als Oktetten (bytes).

Dann hängts von der DBD::mysql Version ab, ob Dein Perl-Script als DB-Client mit MySQL utf-8 reden kann.

Wenn das Alles nicht möglich ist, speichere einfach die Eingaben als Oktetten in Tabellen, die mit charset latin1 getagged sind. Umtaggen kannst Du auch später (alter table...).

Kriegste das hin?

Viele Grüße,
Hotti