Hallo zusammen,
ich komme einfach nicht weiter. Seit 2 Tagen beschäftige ich mich mit Perl. Zum einen interessiert mich diese Sprache, zum anderen ist sie noch immer weit verbreitet.
Nun wollte ich also einen Formmailer von Stefan Münz (http://aktuell.de.selfhtml.org/artikel/cgiperl/form-mail/) auf meine Website anwenden.
Unter http://www.abtsbessingen.de/gaestebuch.html möchte ich diesen installieren. Der User soll mir seinen Gästebuch-Eintrag schicken, damit ich Ihn überprüfen kann. Nur irgendwie klappt das nicht.
Ich hoffe, irgendjemand kann mir helfen
---------------------------------------------------------------------
Schaut euch den Quelltext meiner HTML-Seite an und dann diesen hier vom cgi-Skript:
#!/usr/bin/perl
-------> Individuelle Parameter des Skriptes - bitte anpassen!
--> SMTP-Programm zum Versenden der Mail:
$Sendmail_Prog = "/usr/sbin/sendmail";
--> Ziel-Mailadresse, an die gesendet werden soll:
$mailto = 'ozzyka@gmail.com';
-------> 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:
$begrenzer = $query->param('begrenzer'); # ---> Begrenzerzeichen zwischen name und value
$adresse = $query->param('adresse'); # ---> URL für Dankeseite
$betreff = $query->param('betreff'); # ---> E-Mail-Subject
-------> alle Whitespace-Zeichen (Leerzeichen, Tabulator, Newline) in Leerzeichen wandeln
# VERHINDERT sonst möglichen MISSBRAUCH des Skripts
$betreff =~ s/\s/ /g;
-------> Text der E-Mail aus den Formulardaten ermitteln:
$mailtext = "";
foreach(@names) {
$name = $_;
@values = "";
@values = $query->param($name);
if($name ne "adresse" && $name ne "betreff" && $name ne "begrenzer") {
foreach $value (@values) {
$mailtext = $mailtext.$name;
$mailtext = $mailtext.$begrenzer;
$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: $betreff\n\n";
print MAIL "$mailtext\n";
close(MAIL);
-------> Dankeseite an Browser senden:
print "Location: $adresse\n\n";
---------------------------------------------------------------------
Ich habe alle anderen wichtigen Dinge beachtet (755, ASCII, Pfad der CGI-Module).
Wer kann mir helfen?
Danke für eine Antwort.