Daten in txt-Datei schreiben
Daniel
- perl
Hallo,
Folgendes: Ich möchte ein Einfaches HTML-Formular mit verschiedenen Feldern z.B. Name, Straße, Ort, Plz. Wenn ich die Felder im Formular ausfülle sollen die Daten anschließend in eine txt Datei geschrieben werden. Pro Datensatz eine Zeile und die Felder (Name, Straße...) durch ; getrennt.
Wie könnte man das umsetzen. Hat jemand vielleicht eine Script Vorlage?
Danke für eure Hilfe.
Hallo
Folgendes: Ich möchte ein Einfaches HTML-Formular mit verschiedenen Feldern z.B. Name, Straße, Ort, Plz. Wenn ich die Felder im Formular ausfülle sollen die Daten anschließend in eine txt Datei geschrieben werden. Pro Datensatz eine Zeile und die Felder (Name, Straße...) durch ; getrennt.
Wie könnte man das umsetzen. Hat jemand vielleicht eine Script Vorlage?
http://www.selfhtml.teamone.de/cgiperl/funktionen/einausgabe.htm#open
Sowas wie:
open (DATEI, ">Datei.txt");
print DATEI "$Formular{Name}; $Formular{Srasse}...\n";
close (DATEI);
müsste klappen. $Formular{Name} setzt aber vorraus, dass du oben in die Perl-Datei
read(STDIN, my $Daten, $ENV{'CONTENT_LENGTH'});
my @Formularfelder = split(/&/, $Daten);
my ($Feld, $Name, $Wert);
my %Formular;
foreach $Feld (@Formularfelder) {
(my $Name, my $Wert) = split(/=/, $Feld);
$Wert =~ tr/+/ /;
$Wert =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$Wert =~ s/</</g;
$Wert =~ s/>/>/g;
$Formular{$Name} = $Wert;
}
stehen hast.
MFG Philipp
Hi,
$Formular{Name} setzt aber vorraus, dass du oben in die Perl-Datei
[...] stehen hast
Was spricht an dieser Stelle gegen die Verwendung von CGI.pm?
Viele Grüße
Torsten
Oh, das geht mir zu schnell.
Ich hab ein HTML-Eingabeformular mit den Textfeldern: Name, Strasse usw. Die Daten werden dann mit der Methode POST an das Perlscript gesendet welches die Daten in die Datei schreiben soll. Genügt mir dann folgendes Script?
open(out,">datei.txt");
print out $name.";".$strasse.";".$plz.";".$ort."\n";
close out;
Tut mir leid wenn ich Nachfrage, aber ich bin in Perl noch nicht so fitt.
DANKE
Hi,
Ich hab ein HTML-Eingabeformular mit den Textfeldern: Name, Strasse usw. Die Daten werden dann mit der Methode POST an das Perlscript gesendet welches die Daten in die Datei schreiben soll. Genügt mir dann folgendes Script?
Nein, noch nicht ganz. Du musst dir zuerst die Werte holen, die aus dem Formular kommen.
http://selfhtml.teamone.de/cgiperl/module/cgi.htm#formularverarbeitung
Dann kannst du wie hier beschrieben, deine Werte in die Textdatei schreiben:
http://selfhtml.teamone.de/cgiperl/funktionen/einausgabe.htm#open
Achte auch darauf, wie du die Datei öffnest. ">" überschreibt alles, was bisher in der Datei stand, vielleicht willst du das aber gar nicht. Und denke daran, mögliche Fehler beim Öffnen abzufragen.
Viele Grüße
Torsten
Hallo,
Folgendes: Ich möchte ein Einfaches HTML-Formular mit verschiedenen Feldern z.B. Name, Straße, Ort, Plz. Wenn ich die Felder im Formular ausfülle sollen die Daten anschließend in eine txt Datei geschrieben werden. Pro Datensatz eine Zeile und die Felder (Name, Straße...) durch ; getrennt.
Wie könnte man das umsetzen. Hat jemand vielleicht eine Script Vorlage?
open(out,">datei.txt");
print out $name.";".$strasse.";".$plz.";".$ort."\n";
close out;