Leser: 23
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
#!/usr/local/bin/perl # -------> Individuelle Parameter des Skriptes - bitte anpassen! # --> SMTP-Programm zum Versenden der Mail: $Sendmail_Prog = "/usr/lib/sendmail"; # --> Ziel-Mailadresse, an die gesendet werden soll: $mailto = 'adresse@provider.de'; # -------> Modul für CGI-Scripts einbinden: use CGI; # -------> Modul für CGI-Scripts zum Einlesen der Formulardaten anwenden: $query = new CGI; @names = $query->param; # -------> interne Daten aus den erwarteten hidden-Feldern auslesen: $delimiter = $query->param('delimiter'); # ---> Begrenzerzeichen zwischen name und value $returnhtml = $query->param('return'); # ---> URL für Dankeseite $subject = $query->param('subject'); # ---> E-Mail-Subject # -------> alle Whitespace-Zeichen (Leerzeichen, Tabulator, Newline) in Leerzeichen wandeln # VERHINDERT sonst möglichen MISSBRAUCH des Skripts $subject =~ s/\s/ /g; # -------> Text der E-Mail aus den Formulardaten ermitteln: $mailtext = ""; foreach(@names) { $name = $_; @values = ""; @values = $query->param($name); if($name ne "return" && $name ne "subject" && $name ne "delimiter") { foreach $value (@values) { $mailtext = $mailtext.$name; $mailtext = $mailtext.$delimiter; $mailtext = $mailtext.$value."\n"; } } } # -------> E-Mail versenden: open(MAIL,"|$Sendmail_Prog -t") || print STDERR "Mailprogramm konnte nicht gestartet werden\n"; print MAIL "To: $mailto\n"; print MAIL "Subject: $subject\n\n"; print MAIL "$mailtext\n"; close(MAIL); # -------> Dankeseite an Browser senden: print "Location: $returnhtml\n\n";
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<html>
<head>
<title>Titeltext</title>
</head>
<body>
<form action="http://www.adresse.de/verschicken.cgi" method="post" name="Formular" enctype="text/plain">
<input type="hidden" name="return" value="http://www.adresse.de/seite.html">
<input type="hidden" name="delimiter" value=": ">
<input type="hidden" name="subject" value="betreffwort">
Abesender:* <input type="text" name="absender" size=15><br>
Nachricht:* <textarea name="nachricht" rows="3" cols="25"></textarea><br>
<p><input type="submit" value="Abschicken">
</body>
</html>
QuotePOSTDATAreturn=http://www.adresse.de/seite.html
delimiter=:
subject=betreffwort
absender=test
nachricht=testen
QuoteFound
The document has moved here.
Apache/2.2.9 (Debian) DAV/2 SVN/1.5.1 PHP/5.2.13 mod_ssl/2.2.9 OpenSSL/0.9.8g Server at xa123.123.provider.de Port 80
QuoteFound
The server encountered an internal error or misconfiguration and was unable to complete your request.
enctype="application/x-www-form-urlencoded"
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
#!/usr/local/bin/perl use strict; use warnings; # -------> Individuelle Parameter des Skriptes - bitte anpassen! # --> SMTP-Programm zum Versenden der Mail: my $Sendmail_Prog = '/usr/lib/sendmail'; # --> Ziel-Mailadresse, an die gesendet werden soll: my $mailto = 'email-adresse'; # -------> Modul für CGI-Scripts einbinden: use CGI; use CGI::Carp qw(fatalsToBrowser); $CGI::DISABLE_UPLOADS = 0; # no uploads $CGI::POST_MAX=1024*50; # max. 50k Postings # -------> Modul für CGI-Scripts zum Einlesen der Formulardaten anwenden: my $query = CGI->new(); my @names = $query->param(); # -------> interne Daten aus den erwarteten hidden-Feldern auslesen: my $delimiter = $query->param('delimiter'); # ---> Begrenzerzeichen zwischen name und value my $returnhtml = $query->param('return'); # ---> URL für Dankeseite my $subject = $query->param('subject'); # ---> E-Mail-Subject # -------> alle Whitespace-Zeichen (Leerzeichen, Tabulator, Newline) in Leerzeichen wandeln # VERHINDERT sonst möglichen MISSBRAUCH des Skripts my $subject =~ s/\s/ /g; # -------> Text der E-Mail aus den Formulardaten ermitteln: my $mailtext = ""; foreach my $name (@names) { if ( !grep{ $_ eq $name }('return','subject','delimiter') ) { my @values = $query->param($name); foreach my $value (@values) { $mailtext .= $name; $mailtext .= $delimiter; $mailtext .= $value."\n"; } } } # -------> E-Mail versenden: open(MAIL,"|$Sendmail_Prog -t") || print STDERR "Mailprogramm konnte nicht gestartet werden\n"; print MAIL "To: $mailto\n"; print MAIL "Subject: $subject\n\n"; print MAIL "$mailtext\n"; close(MAIL); # -------> Dankeseite an Browser senden: print $query->redirect('-url' => $returnhtml);
QuoteInternal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, apache@provider.de and inform them of the time the error occurred, and anything you might have done that may have caused the error.
More information about this error may be available in the server error log.
Apache/2.2.14 (Unix) DAV/2 mod_ssl/2.2.14 OpenSSL/0.9.7m PHP/5.2.6 Server at www.provider.de Port 80