perlunity.de - PERL | JAVASCRIPT | PHP | MySQL | APACHE



#!/COMMUNITY

Members: 5374
davon online: 1
weitere User: 31
Click for quality!




11.02.2012 / 13:06

Community-Member werden   |   Paßwort vergessen   |   OnlineMonitor (1) Wer ist online ... OnlineMonitor starten !
     

 

Home


PERLscripts


PHPscripts


JAVAscripts


Hilfreiches


Links2www


Newscenter


Community


Interna




Community  »  Perl: Allgemeines Forum zur Themenübersicht Themensuche Themenansicht in Thread-Modus


Beitragwie kann ich einen HTML-Formular in Perl speichern
Seitenanfang
Hallo,

ich habe einen Formular mit Perl eingebunden HTML geschrieben und ich habe auch die Auswertung hinbekommen, aber wie funktioniert denn das ich die Auswertung in eine Datei speichere mit dem Speicher Datum. Ich weiß das ich irgendwie mit dem Befehl open() arbeiten muss aber habe es nicht hinbekommen.

Danke schon mal

Mfg

Datum: 14.08.2006-10:12

Beitragre: wie kann ich einen HTML-Formular in Perl speichern
Seitenanfang
open my $fh, '>', $dateiname or die "Could not open '$dateiname' for writing: $!";
print $fh "Das was du schreiben willst\n";
close $fh;

kennst du schon perldoc perlintro? wenn nicht, unbedingt lesen.

Datum: 14.08.2006-11:08

Beitragre: wie kann ich einen HTML-Formular in Perl speichern
Seitenanfang
Das ist jetzt das Formular code:

#!/usr/bin/perl

#Variabeln aus Uebergabe holen

read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
$buffer = $ENV{"QUERY_STRING"};
@pairs = split(/&/, $buffer);
foreach $pair (@pairs) {
($name, $value) = split(/=/, $pair);
$value =~ tr/+/ /;
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$name =~ tr/+/ /;
$name =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;

$FORM{$name} = $value; }

print "Content-type: text/html\n\n";

print "<html>
<head>
<title>WMS</title>
</head>
<body bgcolor=\"black\" text=\"white\" link=\"white\" vlink=\"white\">";

print "<hr>
<center><h2>Herzlich Willkommen auf der Seite von<br>WMS Webmad Systemhaus GmbH<h2></center>
<hr>
<a name=\"oben\"><center>Das ausgefühlte Formular sieht so aus:</center></a>";
print "
<form action=\"test15.pl\" align=\"center\">
<fieldset>
<table border=\"5\" align=\"center\" bgcolor=\"black\">";
print "<tr>
<td align=\"right\">Name:</td><td> <input name=\"name\" size=30 value=\"$FORM{name}\"></td>
<tr>
<td align=\"right\">Vorname:</td><td> <input name=\"vname\" size=30 value=\"$FORM{vname}\"></td></tr>
<tr>
<td align=\"right\">Firmenname:</td><td> <input name=\"fname\" size=30 value=\"$FORM{fname}\"></td></tr>
<tr>
<td align=\"right\">Firmensitz:</td><td> <input name=\"sitz\" size=30 value=\"$FORM{sitz}\"></td></tr>
<tr>";
if($FORM{art} eq Informatik)
{
print "<td align=\"right\">Unternehmensart:</td><td> <select name=\"art\"><option>bitte auswählen<option selected>Informatik <option>Technik<option>Kommunuikation</select></td></tr>
</tr>";
}elsif($FORM{art} eq Technik){
print "<td align=\"right\">Unternehmensart:</td><td> <select name=\"art\"><option>bitte
auswählen<option>Informatik <option selected>Technik<option>Kommunuikation</select></td>
</tr></tr>";
}else{
print "<td align=\"right\">Unternehmensart:</td><td> <select name=\"art\"><option>bitte
auswählen<option>Informatik <option>Technik<option selected>Kommunuikation</select></td></tr>
</tr>";
}
print "<tr>
<td align=\"right\">Haben Sie schon mit uns gearbeitet:</td>";

if($FORM{ja} eq on)
{ print"<td align=\"center\">Ja <input type=\"radio\" name=\"ja\" checked>";
print"Nein <input type=\"radio\"name=\"nein\"></td></tr>";
}else{
print"<td align=\"center\">Ja <input type=\"radio\" name=\"ja\">";
print" Nein <input type=\"radio\"name=\"nein\" checked></td></tr>";
};
print "<td></td>
<tr>

<td align=\"right\">Kommentar: </td><td><textarea name=\"kommentar\" rows=\"3\" cols=\"20\">$FORM{kommentar}</textarea></td></tr>
<tr><td></td></tr>
<tr>
<tr>";

#print "<th align=\"right\" colspan=\"2\"><input type=\"submit\" value=\"Abschicken\">";
#print "<input type=\"reset\" value=\"Abbrechen\"></th></tr>";
print "<tr><td></td></tr>";

print "</tr>
</table>
</fieldset>
</form>";

print "
<body>
<html>";

Jetzt möchte ich die speicherung machen, wie soll denn das funktionieren ich habe alles versucht aber es geht nicht.

Soll das etwa so funktionieren:

open(formular, ">test18.pl");
print " DAS GANZE CODE VON OBEN";
close(formular);

Oder habe ich es wieder falsch verstanden.

Mfg

Datum: 14.08.2006-11:39

Beitragre: wie kann ich einen HTML-Formular in Perl speichern
Seitenanfang
bitte lies mal die links unter
http://wiki.perl-community.de/bin/view/Wissensbasis/FaqCGI
@pairs = split(/&/, $buffer);

ist steinzeit. stattdessen verwendet man heute das CGI-modul.

kannst du mir verraten, wie du auf den code

open(formular, ">test18.pl");

kommst?
schau dir nochmal meinen code an und erkenne
den unterschied.
"habe alles versucht aber es geht nicht." ist übrigens
keine aussagekräftige fehlermeldung. hellsehen kann
hier keiner.

generell solltest du auch strict und warnings benutzen:
http://wiki.perl-community.de/bin/view/User/UseStrict

Datum: 14.08.2006-11:55

Beitragre: wie kann ich einen HTML-Formular in Perl speichern
Seitenanfang
außerdem wäre es wirklich nett von dir, wenn du code-tags zum formatieren deines codes benutzen würdest.

Datum: 14.08.2006-11:55

Beitragre: wie kann ich einen HTML-Formular in Perl speichern
Seitenanfang
kannst du mir verraten, wie du auf den code

open(formular, ">test18.pl");

kommst?

ist doch klar, ich öffne die Datei test18.pl vorauf ich einen schreibe zugriff habe mit dem Variablen formular.Habe jetzt nicht verstanden was du nicht an diesem Befehl verstanden hast. Oder ist dieser Befehl komplet falsch.

Außerdem habe ich das von dir das ausprobiert ging leider nicht.

Datum: 14.08.2006-16:32

Beitragre: wie kann ich einen HTML-Formular in Perl speichern
Seitenanfang
"Außerdem habe ich das von dir das ausprobiert ging leider nicht."

na dann. so kommen wir auch nicht weiter. "ging nicht"
ist keine nützliche fehlerbeschreibung.

filehandles schreibt man groß oder nimmt gleich lexikalische filehandles, so wie ich es gezeigt habe.
das "or die ..." ist wichtig! denkst du, ich schreib das nur zum spass dahin?
und ein bißchen selbst nachdenken bzw. die links lesen,
die ich gepostet habe, darfst du auch.

Datum: 14.08.2006-16:51

Beitragre: wie kann ich einen HTML-Formular in Perl speichern
Seitenanfang
Das was ich gemacht hatte, war komplett richtig, das Problem war nur die Berechtigung, nachdem ich dei Berechtigung zugeteilt habe ging alles einwnadfrei.

Datum: 15.08.2006-16:33

-






-
-