Hallo looneytune!
wohl wahr. Hätt ich auch gleich dran denken können den Code zu posten. War wohl doch bissl spät. Das Script sieht folgendermassen aus:
Na, damit kann man loslegen ;)
#! /usr/bin/perl
^ # hier gehört eigentlich kein Leerzeichen hin
# -w (warnings) fehlt
#!/usr/bin/perl -w
use strict; # Weiter unten deklarierst Du schon die Variablen mit »my«, sei
# dann konsequent!
use CGI qw(:standard);
use CGI::Carp qw(fatalsToBrowser);#init
print "Content-type: html\n\n";
^^^^ # siehe Antwort von Siechfred
# falscher Content-Type war auch mein Verdacht
#definitions
my $MailPgm = '/usr/sbin/sendmail';
my $Mail= "testmail@yahoo.de";
my $Anrede= param('anrede');
my $Name= param('nachname');
my $Vorname= param('vorname');
my $From= param('email');
my $Telefon= param('telefon');
my $Message= param('nachricht2');
my $Subject= "Kontaktanfrage via www.wodausch.com";
my $returnhtml= param('danke');open (MAIL, "|$MailPgm $Mail") || die "Fehler beim Zugriff auf $MailPgm!\n";
print MAIL "Subject: $Subject\n\n";
print MAIL "From: $From\n";
print MAIL "Name: $Name\n";
print MAIL "Vorname: $Vorname\n";
print MAIL "Telefon: $Telefonnummer\n";
print MAIL "$Message\n";
close MAIL;#Dankeseite an Browser senden:
print "$returnhtml\n";
^^^^^^^^^^^^^^^^^^^^^^^^^
Was ist der Inhalt von $returnhtml? Eine URL. Du sagst hier:
Gib aus "URL". Also bekommst Du eine URL - und zwar im Klartext.
Eine Weiterleitung erreichst Du mit:
print "Location: $returnhtml\n\n";
Da Du aber bereits oben einen HTTP-Header ausgibst, wird es nicht funktionieren. Streiche die Header-Ausgabe ganz oben, denn Du gibst ja kein HTML aus, sondern versendest Formulardaten per E-Mail. Dann klappt's auch mit der Dankeseite.
Viele Grüße aus Frankfurt/Main,
Patrick
_ - jenseits vom delirium - _
[link:hatehtehpehdoppelpunktslashslashwehwehwehpunktatomicminuseggspunktcomslash]
Nichts ist unmöglich? Doch!
Heute schon gegökt?
All'alba vincerò!