Mailformular

Hi Leute!

Ich habe ein Mailformular mit Optionsschaltern erstellt.
Die Optionsschalter stellen die Zuständigkeiten für ein Projekt dar.
Sprich wenn man "Frage wegen Catering" anklickt soll das ganze an die Mail des Catering-Zuständigen gehen, wenn man "Frage wegen Musik" auswählt an die Mailadresse des DJ's usw.

Code:
<input type="hidden" name="empfaenger" value="HIER_IHRE@EMAIL.DE"/>

Jetzt ist meine Frage, durch was ich "HIER_IHRE@EMAIL.DE" ersetzen muss, um das oben erklärte prinzip zu realisieren bzw. ob ich's am besten über PHP oder JS mache.

Code:
<input type="radio" name="Optionsschaltergruppe1" value="stefan">
<input type="radio" name="Optionsschaltergruppe1" value="julian">

Eigentlich müsste ich in einem kleinen Script ja nur den values der radio-buttons eine E-mail adresse zuweisen, das ganze in einem Array speichern und dieses wiederum an die empfaenger-value übergeben (oder kann ich gleich die Mailadresse als value verwenden und dann übergeben?)

Das Problem is zudem ein bisschen schwer über Google aufzuspüren, daher wende ich mich an die Experten hier ;)
Danke schon mal im Voraus,
LG,
dutchman
 
du setze den "name" bei dem Formular gleich der Option die du haben willst.
Also z.B.
Code:
<input type="radio" name="catering" value="Stefan" />
<input type="radio" name="musik" value="Julian" />
Und rufst das dann per php $_POST ab:
PHP:
<?php
$Worum_es_geht = $_POST['name'];
// etc. pp.
?>
 
PHP:
<?php
$Worum_es_geht = $_POST['name'];
// etc. pp.
?>

Naja nicht ganz, dies würde voraussetzen, dass du ein <input> Feld mit dem Attribut name = name besitzt.
Statt etwas direkt an eine Emailaddresse zu schreiben könntest du die ganze Verarbeitung über eine separate Datei handeln (zum Beispiel: mail.php). In deine alte html-Datei kommen folgende Zeilen.

Code:
<form action="mail.php" method="post">

Code:
<input type="radio" name="zustaendigkeit" value="musik">
<input type="radio" name="zustaendigkeit" value="catering">

In der eben angesprochenen Datei kannst du dann folgendes Schreiben.

PHP:
<?php
$mailto = $_POST['zuestaendigkeit'];

switch ($mailto) 
{
case "musik":
    //mail an den musikempfänger
    break;
case "catering":
    //mail an den cateringzustaendigen
    break;
}?>

Dies sind die Grundlagen. Das Schöne an dieser Methode ist die Möglichkeit der serverseitigen Validation der Daten. Ebenfalls erscheint deine Email nicht im Quellcode, wodurch deine Mailbox nicht (jedenfalls nicht aus diesem Grund) zugespamt wird.

Viel Spass damit.
she3p
 
OH yeah, danke - bessere Antworten hätt ich mir echt nicht wünschen können =) !
Eine Sache ist mir nur noch nicht ganz klar:
Code:
<input type="hidden" name="empfaenger" value="HIER_IHRE@EMAIL.DE"/>

was setz ich dann hier für value ein (ich nehme nicht an direkt $mailto)?
 
Oh excusé moi, hab ich wohl überlesen.
Ein <input type="hidden"> hat keine Auswirkungen, wenn er nicht serverseitig Verarbeitet wird.

Da wir nun, sofern mit einer Zweitdatei gearbeitet wird, eine serverseitige Verarbeitung haben, fällt ein type=hidden weg.
Die Lösung ist der <form> Tag, welchen ich bereits einen Post vorher ansprach.

Es ist das PHP-Script, welches schlussendlich das Mail versendet.
Tipp: mail()
Es gibt eine ganze Menge Tutorials zum Thema Formularversand im Internet, einfach mal suchen =]
 
Die Methode mit dem Hidden-Input-Feld würde ich auch nicht empfehlen, denn:
  • Du müsstest eine E-Mail-Adresse direkt in den Code schreiben(Spam-Bots).
  • Man könnte dein Script nun benutzen um Mails an beliebige Empfänger senden, ohne, dass du was merkst.
Also hast du die Chancen, dass du vollgespammt wirst oder über dein Script massenweise anderer Leute zugespammt werden, was dann auf dich zurückfällt, weil die Mails von deinem Server kommen. ;-)
Damit hab ich leider schon Erfahrungen gemacht :rolleyes:
Allerdings war unser Webhoster so frei mir bescheid zu geben, dass da massenweise Mails verschickt werden, bevor was passieren konnte.

Wen's interessiert: Webhoster ist www.all-inkl.de
Die sind klasse ;)
 
keksamilw0rmphpforms.gif

Na wenn wir schon so weit sind möchte ich auch gerne ein Paper weiterleiten, das ich mal bei milw0rm gefunden habe: Link

Es beschreibt einen Angriff auf eine Mailformular über eingeschleusten PHP-Code und deren Abwehr (mod_security).

Greetings
 
Zurück
Oben