mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Fr 26.04.2024 13:53 Benutzername: Passwort: Auto-Login

Thema: Zusammenfassung von ein Formular an meine Email senden vom 04.04.2014


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> Zusammenfassung von ein Formular an meine Email senden
Seite: 1, 2  Weiter
Autor Nachricht
tjweb
Threadersteller

Dabei seit: 04.04.2014
Ort: -
Alter: 48
Geschlecht: Weiblich
Verfasst Fr 04.04.2014 16:28
Titel

Zusammenfassung von ein Formular an meine Email senden

Antworten mit Zitat Zum Seitenanfang

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 "&nbsp";
}

if($Nachname=="")
{
    echo "";
     
}
else
{
    echo $Nachname;
    echo "&nbsp";
     
}

if($Vorname=="")
{
    echo "";
}
else
{
    echo $Vorname;
    echo "&nbsp";
    echo "<br />";
}

if($Strasse=="")
{
    echo "";
}
else
{
    echo $Strasse;
    echo "<br />";
}

if($PLZ=="")
{
    echo "";
}
else
{
    echo $PLZ;
    echo "&nbsp";
}

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
  View user's profile Private Nachricht senden
qualidat

Dabei seit: 14.09.2006
Ort: Eichwalde bei Berlin
Alter: 63
Geschlecht: Männlich
Verfasst Fr 04.04.2014 16:42
Titel

Antworten mit Zitat Zum Seitenanfang

- 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
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Anzeige
Anzeige
DesignKater

Dabei seit: 26.06.2007
Ort: -
Alter: -
Geschlecht: -
Verfasst Fr 04.04.2014 19:46
Titel

Antworten mit Zitat Zum Seitenanfang

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 "&nbsp";
}


mach doch anz einfach

Code:

if($PLZ !== '') {
  echo $PLZ . '&nbsp';
}


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
  View user's profile Private Nachricht senden
DEKONSTRUKTIV

Dabei seit: 22.06.2009
Ort: bln
Alter: -
Geschlecht: -
Verfasst Fr 04.04.2014 19:50
Titel

Antworten mit Zitat Zum Seitenanfang

oh himmel.
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
remote

Dabei seit: 10.11.2006
Ort: /var/www/
Alter: 110
Geschlecht: Männlich
Verfasst Fr 04.04.2014 20:10
Titel

Antworten mit Zitat Zum Seitenanfang

lern bitte laufen bevor du anfängst zu turnen.
http://tut.php-quake.net/de/index.html
  View user's profile Private Nachricht senden
labrar

Dabei seit: 04.04.2006
Ort: -
Alter: 49
Geschlecht: Männlich
Verfasst So 06.04.2014 20:22
Titel

Antworten mit Zitat Zum Seitenanfang

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:
Code:
$results='';

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:
Code:
$results='';

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);
  View user's profile Private Nachricht senden
pantonine

Dabei seit: 03.03.2011
Ort: gehen Sie bitte weiter…
Alter: -
Geschlecht: -
Verfasst So 06.04.2014 21:50
Titel

Antworten mit Zitat Zum Seitenanfang

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…
  View user's profile Private Nachricht senden
labrar

Dabei seit: 04.04.2006
Ort: -
Alter: 49
Geschlecht: Männlich
Verfasst So 06.04.2014 21:53
Titel

Antworten mit Zitat Zum Seitenanfang

LOL. Harharhar.

Meinst du der Threadersteller kann damit was anfangen???

Ich gebe hier nur Möglichkeiten auf, auf denen er aufbauen kann.
  View user's profile Private Nachricht senden
 
Ä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
Neues Thema eröffnen   Neue Antwort erstellen Seite: 1, 2  Weiter
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.