Ich hab ein Problemchen mit einem Formular, welches ich zwar abschicken kann ... es kommt aber keine Mail an.
Das Formular sieht so aus:
<form action="/cgi-bin/formmail.pl" method="post">
<input name="return" value="/danke.html" type="hidden">
<input name="delimiter" value=": " type="hidden">
<input name="subject" value="Feedback-Formular" type="hidden">
<fieldset>
<legend>Rückruf-Service</legend>
<div class="explain">Wir rufen Sie gerne zurück.</div>
</fieldset>
<fieldset>
<legend>Daten:</legend>
<div>Name:<br><input name="Name" class="text" type="text"></div>
<div>Vorname<br><input name="Vorname" class="text" type="text"></div>
<div>Rufnummer<br><input name="Rufnummer" class="text" type="text"></div>
<div>Wann können wir Sie erreichen?<br><textarea name="Zeit" class="text"></textarea></div>
</fieldset>
<fieldset>
<legend>Daten:</legend>
<p><input class="button" value="Absenden" type="submit">
<input class="button" value="Löschen" type="reset"></p>
</fieldset>
</form>
Die formmail.pl liegt im richtigen Verzeichnis (sonst würde das Formular wohl auch erst gar nicht verschickt
... und sieht so aus (Pfad sendmail habe ich beim Hoster nachgefragt):
#!/usr/bin/perl
$mailto = "[email protected]";
$Sendmail_Prog = "/usr/bin/sendmail";
use CGI;
$query = new CGI;
@names = $query->param;
# interne Daten aus den erwarteten hidden-Feldern auslesen:
$delimiter = $query->param('delimiter'); # ---> Begrenzerzeichen
$returnhtml = $query->param('return'); # ---> Dankeseite
$subject = $query->param('subject'); # ---> E-Mail-Subject
# Text der E-Mail aus den Formulardaten ermitteln:
$mailtext = "";
foreach(@names) {
$name = $_;
@values = "";
@values = $query->param($name);
if($name ne "mailto" && $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 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";
Die Rechte habe ich auf 755 gesetzt.
Wie gesagt, das Formular wird abgeschickt, ich bekomme die Dankeseite ... aber es kommt nichts an.
Kann mir da jemand helfen? PHP steht mir leider nicht zur Verfügung, darum habe ich mich für diese Möglichkeit entschieden.
tinchen2006 Gast |