CGI-Formmailer: Empfänger-Adresse nicht als HIDDEN Feld
Florian
- cgi
Hallo allerseits,
meine Kontaktformulare laufen momentan als Frontpage-Formulare. Nun taucht da aber bekanntermaßen die Empfänger-Adresse im Quell-Text auf, was ich aber zur Vermeidung von Spam vermeiden möchte.
Auf der Suche nach einem entsprechenden CGI-Script habe ich logischerweise tonnenweise Scripte gefunden. Leider aber ist die email Adresse meistens dann doch wieder sichtbar, weil sie über ein hidden Feld eingegeben wird.
Gefunden habe ich zB http://sourceforge.net/projects/nms-cgi/ , was eigentlich genau das wäre,was ich brauche. Leider leider aber bringe ich weder FormMail noch TFMail auf meinem Puretec Webspace korrekt zum Laufen (es "läuft" zwar, aber mit Fehlern). Weswegen ich jetzt wieder auf der Suche bin.
Ich wühle mich jetzt schon seit Tagen durch Web und finde einfach nichts gescheites. Es wäre super, wenn mir jemand ein konkretes Script empfehlen könnte. Ich hoffe, ich komme hier nicht als "fauler Hund" rüber, der zu träge zum Suchen ist. Ich habe hier auf selfhtml gesucht und auch ein paar Sachen gefunden, zB Links zu anderen Seiten, die wieder tonnenweise Skripten enthalten...
Wahrscheinlich sollte ich noch dazusagen, daß ich mich relativ wenig auskenne mit CGI, weswegen "Selberschreiben" wohl nicht drin ist. Das Skript sollte freeware sein, eine Bestätigungsseite haben (die nach Möglichkeit den eingegeben Text anzeigt) und evtl. eine Bestätigungsemail an den Absender schickt. Aber letztlich ist das alles nicht so wichtig, ich wäre schon froh, wenn ich ein simples formmailer Script finde, das die Email Adresse nicht im Quellcode enthält und das auch für Newbies installierbar ist.
Danke im voraus
Moin Moin !
Ich nehme an, Du willst den Form-Mailer nur für eine Ziel-Adresse benutzen.
Dann nimm das CGI-Script, suche die Stelle, in der das Hidden-Feld ausgewertet wird, und ersetze sie durch eine einfache Zuweisung einer konstanten Mailadresse.
In Perl-Formmailern dürfte die entscheidende Stelle ungefähr so aussehen:
my $targetmail=param('hiddenfieldname');
oder
my $targetmail=$parameters{'hiddenfieldname'};
Das ersetzt Du einfach durch folgendes:
my $targetmail='someaccount@example.com';
Alexander
Hallo Florian,
Ich wühle mich jetzt schon seit Tagen durch Web und finde einfach nichts gescheites. Es wäre super, wenn mir jemand ein konkretes Script empfehlen könnte. Ich hoffe, ich komme hier nicht als "fauler Hund" rüber, der zu träge zum Suchen ist. Ich habe hier auf selfhtml gesucht und auch ein paar Sachen gefunden, zB Links zu anderen Seiten, die wieder tonnenweise Skripten enthalten...
Nun ja, fauler Hund sicher nicht. Aber mit Nachdenken kann man schon recht weit kommen. In allen Scripts steht irgendwo der Code, der den Mailtext erzeugt. Beispiel:
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);
Soooo wahnsinnig schwer ist es doch nicht, zu ahnen, dass jene Zeile, die 'To: ....' enthaelt, den Empfaenger der Mail nennt. Dort also einfach die feste Mailadresse einsetzen - und fertig. Beispiel:
open(MAIL,"|$Sendmail_Prog -t") || print STDERR "Mailprogramm konnte nicht gestartet werden\n";
print MAIL "To: selfhtml@teamone.de\n";
print MAIL "Subject: $subject\n\n";
print MAIL "$mailtext\n";
close(MAIL);
viele Gruesse
Stefan Muenz