2k Aufrufe
Gefragt in Skripte(PHP,ASP,Perl...) von
Hallo,

ich möchte gern mein Formular per PHP in PDF umwandeln lassen und dann an variable Empfänger versenden. Ich stelle mir das folgendermaßen vor:

Es gibt bis zu 3 Felder, in die man eine E-Mail Adresse eintragen kann. Dann Folgt das Formular. Unten steht ist ein Sende-Button.

Momentan kann ich das Formular nur an eine, im Quelltext stehende E-Mail Adresse senden. Diese soll varriabel sein.

Wie kann ich diese E-Mail Adresse varriabel gestallten?

Vielen Dank
Kevin

7 Antworten

0 Punkte
Beantwortet von tomham Mitglied (407 Punkte)
Hallo Kevin1992.

Du kannst das lösen, indem du als Sende-Option des Formulars das PHP-Script selber nochmals aufrufst und dir dann die Mail-Adresse aus deinem Fomular auslest und die dann entsprechend verarbeitest.

LG Tom
0 Punkte
Beantwortet von tomham Mitglied (407 Punkte)
P.S. Ein Beispiel für so ein Formular findest du >> hier <<
0 Punkte
Beantwortet von
Vielen Dank für deine Antwort.
Könntest du mir bitte dabei helfen.

Dies ist mein Code bis jetzt:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Unbenanntes Dokument</title>
</head>

<body>
<p>An diese 3 E-Mail Adressen soll das unten stehende Formular als PDF verschickt werden.</p>
<p>Email 1
<label>
<input type="text" name="Email 1" id="Email 1" />
</label>
</p>
<p>Email 2
<label>
<input type="text" name="Email 2" id="Email 2" />
</label>
</p>
<p>Email 3
<label>
<input type="text" name="Email 3" id="Email 3" />
</label>
</p>
<form id="form1" name="form1" method="post" action="">
<p>Frage 1 </p>
<p>
<label>
<input type="text" name="Frage 1" id="Frage 1" />
</label>
</p>
<p>Frage 2</p>
<p>
<label>
<input type="text" name="Frage 2" id="Frage 2" />
</label>
</p>
<p>Frage 3</p>
<p>
<label>
<input type="text" name="Frage 3" id="Frage 3" />
</label>
</p>
<p>Frage 4</p>
<p>
<label>
<input type="text" name="Frage 4" id="Frage 4" />
</label>
</p>
<p>Frage 5</p>
<p>
<label>
<input type="text" name="Frage 5" id="Frage 5" />
</label>
</p>
<p>Frage 6</p>
<p>
<label>
<input type="text" name="Frage 6" id="Frage 6" />
</label>
</p>
<p>Frage 7</p>
<p>
<label>
<input type="text" name="Frage 7" id="Frage 7" />
</label>
</p>
<p>&nbsp;</p>
<p>
<input type="submit" value="Senden" />
<input type="reset" value="Zurücksetzen" />
&nbsp;</p>
</form>
</body>
</html>


ich weis, es ist noch nicht viel aber ich würde mich sehr freuen, wenn ihr mir helfen könntet.

Vielen Dank
Kevin
0 Punkte
Beantwortet von
Email-Adressen-Felder auslesen, statt fixer Adresse die entsprechenden Variablen (mit einem r) einsetzen.

Um dir bei der Verbesserung deines PHP-Codes zu helfen müsstest du diesen posten.

Zu deinem HTML ist anzumerken: Wenn die EMail-Adressenfelder außerhalb <form ...> ... </form> stehen werden sie nicht übertragen ans PHP-Script. Bei action solltest du dein PHP-Script als Ziel angeben, sonst ruft der Browser einfach die HTML-Seite erneut auf.
0 Punkte
Beantwortet von tomham Mitglied (407 Punkte)
Sry für die späte Antwort, war beruflich unterwegs ...
Dein Script könnte ca. so aussehen:

<html>
<head>
<title>Unbenanntes Dokument</title>
</head>
<body>
<?php

if (!$_POST['gesendet'] && !$_POST['name']) {

?>
<form method="POST" action="<?php echo $PHP_SELF ?>">
<p>Frage 1 ...
<input type="text" name="f1" size="30">
</p>
<p>Frage 2 ...
<input type="text" name="f2" size="30">
</p>
<p>Weitere Fragen wie oben ... </p> <!-- So viele Fragen du halt hast ... -->
<p>Mailempfänger:
<select name="mail" size="3">
<option value="Mail1">Mail1</option> <!-- Hier statt Mail1 die erste Mailadresse eintragen -->
<option value="Mail2">Mail2</option> <!-- Hier statt Mail2 die zweite Mailadresse eintragen -->
<option value="Mail3">Mail3</option> <!-- Hier statt Mail3 die dritte Mailadresse eintragen -->
</p>
<p>Kommentar:
<textarea name="kommentar" cols="30" rows="5"></textarea> <!-- evtl. zusätzlicher Kommentar -->
</p>
<p>Name:
<input type="text" name="name" size="50">
</p>
<p>
<input type="submit" name="Submit" value="Senden">
<input type="reset" name="reset" value="Zurücksetzen">
<input type="hidden" name="gesendet" value="1">
</p>
</form>
<?php

} else {
echo "
Folgende Daten wurden übermittelt:<p>
<b>Name:</b> $_POST[name]<br>
<b>Antwort 1:</b> $_POST[f1]<br>
<b>Antwort 2:</b> $_POST[f2]<br>
/* So viele Fragen du hast, soviele Einträge kannst du hier machen */
<b>Kommentar:</b> $_POST[kommentar]<br>
<b>Daten gesendet an :</b> $_POST[mail]
</p>
";
/* Hier noch eintragen mit welcher Methode du die Daten an die Mailadresse schicken willst sowie Serverdaten deines Mailservers ...
z.B. so: */
$msg="Name: ".$_POST[name]."\nAntwort1: ".$_POST[f1]."\nAntwort 2: ".$_POST[f2]."\nund so weiter ... Kommentar: ".$_POST[kommentar];
mail(mail,"Auswertung vom Server",msg,"from:homepage@wasweißich.xy");
}

?>
</body>
</html>

Dieser Code ist NICHT getestet (habs nur so ausm Kopf gemacht) ... aber probiers mal aus.
LG Tom
0 Punkte
Beantwortet von
Beachte:
Wenn dein Script einfach eingegebene Daten an eine/mehrere eingegebene Mailadresse/n sendet ist die Chance groß, dass du demnächst ungewollt an halb Deutschland Infos zum Thema Viagra&Co versendest.
0 Punkte
Beantwortet von
Vielen Dank für eure Hilfe.
Ich werde leider erst Morgen dazu kommen, Ihn zu testen.
...