Autor |
Nachricht |
tjweb
Threadersteller
Dabei seit: 04.04.2014
Ort: -
Alter: 48
Geschlecht:
|
Verfasst Fr 04.04.2014 16:28
Titel Zusammenfassung von ein Formular an meine Email senden |
|
|
Guten Tag,
ich bin am verzweifeln und hoffe dass ich hier Hilfe bekomme.
Ich habe ein Konfigurator bestehend aus Radio-Buttons, Checkboxen, Input-Felder und Textarea programmiert.
Diese Daten übergebe ich mit der POST-Methode und anschließend werden diese Daten in einer Session gespeichert.
Dann habe ich eine Seite gebaut wo alles was der Kunde hat ausgewählt zusammengefasst ist.
Das habe ich gemacht indem ich die Session auf ihre möglichen Werte überprüft habe.
Bis hier funktioniert auch alles super.
Meine Frage ist jetzt wie kann ich die Zusammenfassung auf meine Email senden?
Ich poste mal den Code von der Seite wo alles Zusammengefasst ist.
Code: | <?php
$aufputz_senkrecht_ausgewählt;
switch($aufputz_senkrecht_ausgewählt)
{
case ("Sie haben Aufputz senkrecht ausgewählt"):
echo $aufputz_senkrecht_ausgewählt;
echo "<br />";
break;
}
$verkleidung_aufputz;
switch($verkleidung_aufputz)
{
case ("Prisma"):
case ("Basic_A"):
case ("Basic_B"):
case ("Quadra_Design"):
case ("RENZ_PLAN"):
case ("RS_2000_4000"):
case ("Convex"):
case ("Tetro"):
echo "Sie haben $verkleidung_aufputz; ausgewählt";
echo "<br />";
break;
}
$standard_farbe;
switch($standard_farbe)
{
case ("Standard_Weiß"):
case ("Graualuminium"):
case ("Edelstahl_V4A"):
case ("Sonderfarbe"):
echo "Sie haben die Farbe $standard_farbe; ausgewählt";
echo "<br />";
break;
}
$Ral_Farben;
switch($Ral_Farben)
{
case ("RAL_1001"):
case ("RAL_1005"):
case ("RAL_1021"):
case ("RAL_2000"):
case ("RAL_3001"):
case ("RAL_3003"):
case ("RAL_3005"):
case ("RAL_3016"):
case ("RAL_4004"):
case ("RAL_5002"):
case ("RAL_5003"):
case ("RAL_5007"):
case ("RAL_5009"):
case ("RAL_5013"):
case ("RAL_5014"):
case ("RAL_5024"):
case ("RAL_6004"):
case ("RAL_6005"):
case ("RAL_6021"):
case ("RAL_6033"):
case ("RAL_7032"):
case ("RAL_7035"):
case ("RAL_7037"):
case ("RAL_7039"):
case ("RAL_8014"):
case ("RAL_9001"):
case ("RAL_9002"):
case ("RAL_9005"):
case ("RAL_9006"):
case ("RAL_9010"):
echo "Sie haben sich die Farbe $Ral_Farben; ausgewählt";
echo "<br />";
break;
}
if($RAL_Nr=="")
{
echo "";
}
else
{
echo "Sie haben die $RAL_Nr ausgewählt";
echo "<br />";
}
if($AnzahlKaestenGesamt=="")
{
echo "";
}
else
{
echo "Sie haben $AnzahlKaestenGesamt Kasten/Kästen angegeben.";
echo "<br />";
}
if($AnzahlKaestenNebeneinander=="")
{
echo "";
}
else
{
echo "Bei dieser Konfiguration sind $AnzahlKaestenNebeneinander Kästen nebeneinander";
echo "<br />";
}
if($AnzahlKaestenUebereinander=="")
{
echo "";
}
else
{
echo "Bei dieser Konfiguration sind $AnzahlKaestenUebereinander Kästen Übereinander";
echo "<br />";
}
$groeße_aufputz_senkrecht;
switch($groeße_aufputz_senkrecht)
{
case ("260x330x100"):
case ("370x330x100"):
case ("370x330x145 mit Standardklappe"):
case ("370x330x145 mit Zeitungsklappe RS50"):
case ("300x440x145 mit Standardklappe"):
case ("300x440x145 mit Zeitungsklappe RS50"):
case ("370x440x145 mit Standardklappe"):
case ("370x440x145 mit Zeitungsklappe RS50"):
case ("aufputz_senkrecht_sondermaß"):
echo "Folgende größe haben wir vermerkt: $groeße_aufputz_senkrecht";
echo "<br />";
break;
}
if($sondermaß_text=="")
{
echo "";
}
else
{
echo "Ihre gewünschte Kastengröße: $sondermaß_text";
echo "<br />";
}
$klingel_sprech;
switch($klingel_sprech)
{
case ("ohne Klingel_Sprechanlage"):
case ("mit Klingel_Sprechanlage"):
echo "Sie möchten $klingel_sprech";
echo "<br />";
break;
}
$klingel_aufputz_senkrecht;
switch($klingel_aufputz_senkrecht)
{
case ("RSA2 Aluminium"):
case ("RSA2 Edelstahl"):
case ("RSA2 kompakt Aluminium"):
case ("RSA2 kompakt Edelstahl"):
case ("RSA2 Kunststoff"):
case ("RSA2 kompakt Kunststoff"):
case ("RSA Aluminium"):
case ("RSA Edelstahl"):
case ("Standardmodule aus Kunststoff "):
echo "Sie haben sich $klingel_aufputz_senkrecht ausgewählt";
echo "<br />";
break;
}
if($wert2=="")
{
echo "";
}
else
{
echo "Sie haben $wert2 Klingeltaster ausgewählt (ohne Gravur)";
echo "<br />";
}
if($aufputz_senkrecht_klingeltaster=="")
{
echo "";
}
else
{
echo "Sie haben $aufputz_senkrecht_klingeltaster Klingeltaster (mit Gravur) ausgewählt";
echo "<br />";
}
if($input_gravur_aufputz_senkrecht=="")
{
echo "";
}
else
{
echo nl2br ("Folgenden Text haben wir verstanden:<br /> $input_gravur_aufputz_senkrecht");
echo "<br />";
}
$sprechanlage;
switch($sprechanlage)
{
case ("Sprechanlage komplett"):
case ("Vorgerüstet für Sprechanlage"):
case ("ohne Vorrüstung Sprechanlage"):
echo $sprechanlage;
echo "<br />";
break;
}
$sep_namensschild;
switch($sep_namensschild)
{
case ("Mit seperates Namensschild"):
echo $sep_namensschild;
echo "<br />";
break;
}
$regengeschützt;
switch($regengeschützt)
{
case ("Ja die Anlage ist regengeschützt"):
case ("Nein die Anlage ist nicht regengeschützt"):
echo $regengeschützt;
echo "<br />";
break;
}
$fuer_externe_beleuchtung;
switch($fuer_externe_beleuchtung)
{
case ("mit Lichttaster für externe Beleuchtung"):
echo $fuer_externe_beleuchtung;
echo "<br />";
break;
}
$werbung_ja_nein;
switch($werbung_ja_nein)
{
case ("Mit zusaetzlichen Namensschild werbung_ja_nein"):
echo $werbung_ja_nein;
echo "<br />";
break;
}
$zweites_Schild_je_Einwurf;
switch($zweites_Schild_je_Einwurf)
{
case ("zusätzliches Namensschild je Einwurfklappe"):
echo $zweites_Schild_je_Einwurf;
echo "<br />";
break;
}
$aussparung_module;
switch($aussparung_module)
{
case ("Aussparung für vorhandene Module"):
echo $aussparung_module;
echo "<br />";
break;
}
$extra_Beleuchtung;
switch($extra_Beleuchtung)
{
case ("extra Beschriftung siehe Hinweisfeld"):
echo $extra_Beleuchtung;
echo "<br />";
break;
}
$zusaetzliche_Beschriftung;
switch($zusaetzliche_Beschriftung)
{
case ("extra Beschriftung siehe Hinweisfeld"):
echo $zusaetzliche_Beschriftung;
echo "<br />";
break;
}
$zusaetzliche_gravuren;
switch($zusaetzliche_gravuren)
{
case ("zusaetzliche Gravurtexte"):
echo $zusaetzliche_gravuren;
echo "<br />";
break;
}
$zusaetzliche_Sonderkaesten;
switch($zusaetzliche_Sonderkaesten)
{
case ("extra Sonderkaesten gewuenscht"):
echo $zusaetzliche_Sonderkaesten;
echo "<br />";
break;
}
//Beginn Ausgabe der Kopfdaten
echo "<br />";
if($hinweise=="")
{
echo "";
}
else
{
echo nl2br ($hinweise);
echo "<br />";
}
if($Firma_Organisation=="")
{
echo "";
}
else
{
echo $Firma_Organisation;
echo "<br />";
}
$Anrede;
switch($Anrede)
{
case ("Herr"):
case ("Frau"):
echo $Anrede;
echo "<br />";
break;
}
if($Titel=="")
{
echo "";
}
else
{
echo $Titel;
echo " ";
}
if($Nachname=="")
{
echo "";
}
else
{
echo $Nachname;
echo " ";
}
if($Vorname=="")
{
echo "";
}
else
{
echo $Vorname;
echo " ";
echo "<br />";
}
if($Strasse=="")
{
echo "";
}
else
{
echo $Strasse;
echo "<br />";
}
if($PLZ=="")
{
echo "";
}
else
{
echo $PLZ;
echo " ";
}
if($Ort=="")
{
echo "";
}
else
{
echo $Ort;
echo "<br />";
}
if($Land=="")
{
echo "";
}
else
{
echo $Land;
echo "<br />";
}
if($Telefon=="")
{
echo "";
}
else
{
echo $Telefon;
echo "<br />";
}
if($KDNR=="")
{
echo "";
}
else
{
echo $KDNR;
echo "<br />";
}
$angebot_mail_fax;
switch($angebot_mail_fax)
{
case ("per eMail"):
case ("per Fax"):
echo "Sie wollen Ihr Angebot $angebot_mail_fax erhalten";
echo "<br />";
break;
}
if($mail_fax=="")
{
echo "";
}
else
{
echo $mail_fax;
echo "<br />";
}
echo "<br />";
echo "<br />";
echo "<br />";
?> |
Für eine Hilfe wäre ich echt dankbar, da ich schon vieles probiert habe, aber nix hat funktioniert.
Lieben Gruß
tjweb
|
|
|
|
|
qualidat
Dabei seit: 14.09.2006
Ort: Eichwalde bei Berlin
Alter: 63
Geschlecht:
|
Verfasst Fr 04.04.2014 16:42
Titel
|
|
|
- wie man in PHP eine Zeichenkette zusammensetzt (jeweils Bezeichner und Wert), solltest du wissen
- Mails kann man in PHP mit der "eingebauten" Funktion versenden: http://www.php.net/manual/de/function.mail.php
Könnte evtl. schwierig werden, weil die meisten deutschen Provider inzwischen ein verschlüsseltes Versenden verlangen - dann müsstest du "größeres Geschütz" auffahren, z.B. das hier: https://github.com/Synchro/PHPMailer
Zuletzt bearbeitet von qualidat am Fr 04.04.2014 16:43, insgesamt 1-mal bearbeitet
|
|
|
|
|
Anzeige
|
|
|
DesignKater
Dabei seit: 26.06.2007
Ort: -
Alter: -
Geschlecht: -
|
Verfasst Fr 04.04.2014 19:46
Titel
|
|
|
Ich frage mich wieso du mit switch den Inhalt der einzelnenen Variablen prüfst, wenn du sowieso den Inhalt der Variable ausgiebst. Deine Abfragen machen rein gar keinen Sinn. Wenn du lediglich prüfen möchstest ob die Variable nicht leer ist, dann mach doch einfach diese Prüfung, am Beispiel $verkleidung_aufputz und gib dann deinen Text aus:
Code: |
if($verkleidung_aufputz !== ''){
echo "Sie haben $verkleidung_aufputz; ausgewählt";
}
|
Ebenso deine if Abfragen:
Code: |
if($PLZ=="")
{
echo "";
}
else
{
echo $PLZ;
echo " ";
}
|
mach doch anz einfach
Code: |
if($PLZ !== '') {
echo $PLZ . ' ';
}
|
da du den Inhalt ja nur ausgeben willst wenn er auch belegt ist.
Wobei echo grundsätzlich vermieden werden sollte. Besser wäre eine Variable zu Beginn zu definieren, diese dann nur um deine Strings zu erweitern und am Ende auszugeben:
Code: |
$return = '';
$return.= 'Sie haben ' . $verkleidung_aufputz . ' ausgewählt';
print $return;
|
Zuletzt bearbeitet von DesignKater am Fr 04.04.2014 19:51, insgesamt 3-mal bearbeitet
|
|
|
|
|
DEKONSTRUKTIV
Dabei seit: 22.06.2009
Ort: bln
Alter: -
Geschlecht: -
|
Verfasst Fr 04.04.2014 19:50
Titel
|
|
|
oh himmel.
|
|
|
|
|
remote
Dabei seit: 10.11.2006
Ort: /var/www/
Alter: 110
Geschlecht:
|
|
|
|
|
labrar
Dabei seit: 04.04.2006
Ort: -
Alter: 49
Geschlecht:
|
Verfasst So 06.04.2014 20:22
Titel
|
|
|
Also wie ja schon von anderen geschrieben liefert phpmailer da sehr gute Arbeit.
Aber du willst das ganze ja an deine Emailadresse haben. Also ist es ja wurscht ob's hübsch Formatiert ist, solange die Auflistung übersichtlich ist.
Also zwei Möglichkeiten ohne phpmailer (auch wenn empfohlen) die einmal ohne HTML und einmal mit HTML kommen.
Generell fasse ich das für die Beispiele mal zusammen und tu so als hätten deine POST Felder schon die entsprechenden Namen. Wenn nicht, wirst du aber dennoch verstehen was dabei rum kommt.
Zunächst wird mal der ganze Postgruschd zusammengefasst und in einer Variable verbaut. Und zwar so, dass $name dem Postfeld entspricht (Also wenn eines zB. extra_Beleuchtung heißt, wäre die Ausgabe "extra_Beleuchtung=wert") und $val dem entsprechenden Wert enbtspricht.
Zunächst ohne HTML
Leere Variable setzen:
Variable anhand der Postdateien befüllen
Code: | foreach($_POST as $name=>$val){
$results.=$name.' '.$val.'\n';
}
mail('deineemailadresse@adresse.de','Dein Betreff. Z.B. Neue Anfrage von Kunden',$result); |
Nicht hübsch aber ausreichend.
Oder eben mit HTML
Leere Variable setzen:
Variable anhand der Postdateien befüllen
Code: | foreach($_POST as $name=>$val){
$results.=$name.' '.$val.'<br>';
}
$header = "MIME-Version: 1.0\r\n";
$header .= "Content-type: text/html; charset=iso-8859-1\r\n";
$header .= "X-Mailer: PHP ". phpversion();
mail('deineemailadresse@adresse.de','Dein Betreff. Z.B. Neue Anfrage von Kunden',$result,$header); |
|
|
|
|
|
pantonine
Dabei seit: 03.03.2011
Ort: gehen Sie bitte weiter…
Alter: -
Geschlecht: -
|
Verfasst So 06.04.2014 21:50
Titel
|
|
|
Zitat: |
Code: | foreach($_POST as $name=>$val){
$results.=$name.' '.$val.'\n';
}
mail('deineemailadresse@adresse.de','Dein Betreff. Z.B. Neue Anfrage von Kunden',$result); |
Nicht hübsch aber ausreichend. | Ganz super, Einstein. Mach Dich mal über E-Mail-Header-Injection schlau, bevor Du solche Müllbeispiele c&p-fertig anbietest…
|
|
|
|
|
labrar
Dabei seit: 04.04.2006
Ort: -
Alter: 49
Geschlecht:
|
Verfasst So 06.04.2014 21:53
Titel
|
|
|
LOL. Harharhar.
Meinst du der Threadersteller kann damit was anfangen???
Ich gebe hier nur Möglichkeiten auf, auf denen er aufbauen kann.
|
|
|
|
|
|
|
|
Ähnliche Themen |
formular an 2 email Adressen senden
PHP :: kontakt-formular an mich und variable email senden
Adobe LiveCycle Designer - Formular per eMail senden
Html formular senden ohne computer eigenes email programm
Datei via PHP an Email senden
Kontaktformular - script EMAIL senden
|
|