danke für den link... aber das formular ist schon fertig... das was ich nicht verstehe ist halt, wie ich es einbauen muss, dass leere felder nicht mitgeschickt werden...
Ankündigung
Einklappen
Keine Ankündigung bisher.
[Erledigt] leere Formularfelder in Email nicht anzeigen
Einklappen
Neue Werbung 2019
Einklappen
X
-
@S1x: Bitte auf die Qualität Deiner Beiträge achten! Etwas spezieller ist die Frage schon und der Link deshalb nicht zielführend.
@Pixel: Ist für Dich ja schön und gut, aber hier ist ein Beispiel genauso schnell geschrieben wie die Lösung. Bitte lies Dich mal in PHP Grundlagen und das 'Affenformular' ein.
Danach versuchst Du zu verstehen, wie Dein eigener Code funktioniert und wo unsere Hinweise hingehören. Davon haben wir alle mehr (auch Du), als dass wir jetzt Stück für Stück Deine Anwendung entwickeln...[COLOR="#F5F5FF"]--[/COLOR]
[COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
„Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
[URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
[COLOR="#F5F5FF"]
--[/COLOR]
Kommentar
-
Die Qualität meiner Beiträge.... .
Ersters ging es mir darum, ihm zu zeigen wie einfach es doch ist in google zu suchen.
Zweiters hingegen ist der Link zielführend, sicherlich mit ein wenig Denkarbeit verbunden. Wie er schon sagte, weiß er nicht wie er es einbauen muss. Und genau das ist in dem "Tutorial" zu erkennen.
Wie auch immer,....
Gruß s1x
Kommentar
-
Zitat von s1x Beitrag anzeigenDie Qualität meiner Beiträge.... .
Ersters ging es mir darum, ihm zu zeigen wie einfach es doch ist in google zu suchen.
Zweiters hingegen ist der Link zielführend, sicherlich mit ein wenig Denkarbeit verbunden. Wie er schon sagte, weiß er nicht wie er es einbauen muss. Und genau das ist in dem "Tutorial" zu erkennen.
Wie auch immer,....
Gruß s1x
Kommentar
-
Fang lieber an, das Manual (PHP Dokumentation unter php.net) zu lesen. Da gibts Codebeispiele und vor allem ist das Medium (Schrift) sicher besser geeignet.[COLOR="#F5F5FF"]--[/COLOR]
[COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
„Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
[URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
[COLOR="#F5F5FF"]
--[/COLOR]
Kommentar
-
Ich habe mir nun Sachen angeschaut und gelesen, aber ich habe ÜBERHAUPT KEINE AHNUNG wo ich jetzt irgendwie nachlesen könnte, damit ich mein Problem lösen kann...
PHP-Code:$data = array_diff ($_POST , array ('' , null));
Im Manual steht: array_diff Ermittelt die Unterschiede von Arrays
So, und wie muss ich denn jetzt was schreiben, dass die leergebliebenen Felder nicht mit in der Mail angezeigt werden?
Und muss ich das damit auch für jedes Feld einzeln definieren oder gibt es da grundsätzlich irgendwas womit ich sage, input felder die leergeblieben sind werden in der E-Mail nicht mit angezeigt?
Kann man da nicht irgendwas schreiben mit
if input feld leer, zeige es
Kommentar
-
mal ein kleines Beispiel wie man das mit einem Array lösen könnte:
PHP-Code:$arr = array(
'E-Mailadresse' => $_POST['email'],
'Strasse' => $_POST['strasse'],
'Postleitzahk' => $_POST['plz']
);
foreach($arr as $key => $value)
{
if(!empty($value))
{
$mail .= "$key: $value\n";
}
}
Kommentar
-
Du bist aber schnell im Lernen!
Egal, kleine Nachhilfestunde (aber nur die kleine):
1. $_POST ist ein Array. Alle Formularelemente werden mit Ihren name Attributen als Schlüssel im POST Array abgebildet.
Code:<input ... name="text">
PHP-Code:$_POST['text']
2. Soweit so gut. Wird das Formular mit leeren Feldern abgeschickt, tauchen die Schlüssel im POST Array auf (einzige Ausnahme: radio und checkbox felder), ihnen sind aber keine Werte (besser: leere Strings, als '') zugeordnet.
3. Wie Du nachgesehen hast - array_diff () erzeugt ein neues Array, indem es die Werte aus dem (den) hinteren Array(s) vom ersten abzieht.
Leere Werte werden so entfernt.
Da es schlechter Stil ist, das _POST Array zu überschreiben, habe ich das Ergebnis im Bsp. in $data schreiben lassen. Du mußt also mit den Einträgen aus $data weiterarbeiten, die Schlüssel sind die selben wie im ursprünglichen $_POST.[COLOR="#F5F5FF"]--[/COLOR]
[COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
„Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
[URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
[COLOR="#F5F5FF"]
--[/COLOR]
Kommentar
-
Schon berichtigt...[COLOR="#F5F5FF"]--[/COLOR]
[COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
„Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
[URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
[COLOR="#F5F5FF"]
--[/COLOR]
Kommentar
-
waahh langsam.... ^^
also erstmal zu der Variante von Cycap:
Das heißt anstatt meinen Headersachen
PHP-Code:...
$Header .= ">>>Fahrzeugdaten: \n";
$Header .= " - Kennzeichen: ".$kennzeichen."\n";
$Header .= " - Hersteller-Nr.: ".$herstellernr."\n";
$Header .= " - Typschlüssel-Nr.: ".$typschluesselnr."\n";
$Header .= " - Erstzulassung: ".$erstzulassung."\n";
$Header .= " - Jahresfahrleistung: ".$jahresfahrleistung."\n";
$Header .= " - nächste HU: ".$naechste_hu."\n";
$Header .= " - Fahrzeugart: ".$fahrzeugart."\n";
$Header .= " - KW/PS: ".$kw_ps."\n";
$Header .= " - Hersteller: ".$hersteller."\n";
$Header .= " - Typ: ".$typ."\n";
$Header .= " - Ident Nr.: ".$ident."\n";
$Header .= " - aktueller Km-Stand: ".$aktueller_kmstand."\n";
$Header .= " - Zulassung auf VN: ".$zulassung_vn."\n";
...
Ich versteh nicht so richtig wie ich das integrieren soll, da die ganzen Sachen ja mit Header geschrieben sind, damit meine ich das:
PHP-Code:$Mailbetreff = "betreff";
$Trenner = md5(uniqid(time()));
$Header = "From: ".$_REQUEST['email'];
$Header .= "\n";
$Header .= "MIME-Version: 1.0";
$Header .= "\n";
$Header .= "Content-Type: multipart/mixed; boundary=$Trenner";
$Header .= "\n\n";
$Header .= "This is a multi-part message in MIME format";
$Header .= "\n";
$Header .= "--$Trenner";
$Header .= "\n";
$Header .= "Content-Type: text/plain";
$Header .= "\n";
$Header .= "Content-Transfer-Encoding: 8bit";
$Header .= "\n\n";
$Header .= "Sie haben folgende Nachricht erhalten: \n\n";
if($Formularfeld!="senden" && $Formularfeld!="Anhang")
{
$Header .= "Name: ".$name."\n";
$Header .= "Straße: ".$strasse."\n";
$Header .= "Hausnummer: ".$hausnummer."\n";
$Header .= "PLZ Ort: ".$plzort."\n";
$Header .= "Geschlecht: ".$geschlecht."\n";
$Header .= "Beruf: ".$beruf."\n";
$Header .= "öffentlicher Dienst: ".$oefdienst."\n";
$Header .= "Telefon: ".$telefon."\n";
$Header .= "E-Mail: ".$email."\n";
$Header .= "\n";
$Header .= ">>>Fahrzeugdaten: \n";
$Header .= " - Kennzeichen: ".$kennzeichen."\n";
$Header .= " - Hersteller-Nr.: ".$herstellernr."\n";
$Header .= " - Typschlüssel-Nr.: ".$typschluesselnr."\n";
$Header .= " - Erstzulassung: ".$erstzulassung."\n";
$Header .= " - Jahresfahrleistung: ".$jahresfahrleistung."\n";
$Header .= " - nächste HU: ".$naechste_hu."\n";
$Header .= " - Fahrzeugart: ".$fahrzeugart."\n";
$Header .= " - KW/PS: ".$kw_ps."\n";
$Header .= " - Hersteller: ".$hersteller."\n";
$Header .= " - Typ: ".$typ."\n";
$Header .= " - Ident Nr.: ".$ident."\n";
$Header .= " - aktueller Km-Stand: ".$aktueller_kmstand."\n";
$Header .= " - Zulassung auf VN: ".$zulassung_vn."\n";
$Header .= "\n";
$Header .= "Nutzung: ".$nutzung."\n";
$Header .= "\n";
$Header .= "Kasko: ".$versicherungsumfang."\n";
$Header .= " - ".$kaskosb." SB," .$kaskosfkl. "SF-KL/Beitr.satz \n";
$Header .= "\n";
$Header .= "Schutzbrief: ".$schutzbrief."\n";
$Header .= "Leasing: ".$leasing."\n";
$Header .= "Finanzierung: ".$finanzierung."\n";
$Header .= "GAP-Deckung: ".$gapdeckung."\n";
$Header .= "Insassenunfall bei Tod: ".$unfalltod." \n";
$Header .= "Insassenunfall bei Inv: ".$unfallinv." \n";
$Header .= "\n";
$Header .= ">>>Vertragsdaten: \n";
$Header .= "Vorversicherung: ".$vorversicherung."\n";
$Header .= "Vers.nummer: ".$versnummer."\n";
$Header .= "Beginn: ".$beginn."\n";
$Header .= "Ablauf: ".$ablauf."\n";
$Header .= "Tarif: ".$tarif."\n";
$Header .= "Beitrag: ".$beitrag." \n";
$Header .= "\n";
$Header .= "Vorschaeden: ".$vorschaeden." wenn ja, Anzahl:".schaeden."\n";
$Header .= "gekündigt: ".$gekuendigt."\n";
$Header .= "durch: ".$durch."\n";
$Header .= "Zahlungsweise: ".$zahlung."\n";
$Header .= "\n";
$Header .= ">>>Tarifmerkmale: \n";
foreach($_POST['tarifmerkmale'] as $value)
{
$Header .= " - " .$value. "\n";
}
$Header .= "falls Mehrfahrer, ab: ".$mehrfahreralter." Jahre \n";
$Header .= "falls Partner, Geb: ".$partnergeb."\n";
$Header .= "falls jüngster Fahrer, Geb: ".$juengsterfahrergeb."\n";
$Header .= "jährliche Fahrleitung: ".$jaehrlfahrleitung."\n";
$Header .= "\nBemerkung: ".$bemerkung."\n";
$Header .= "\n";
$Header .= "\n";
$Header .= "IP: ".$ip."\n";
}
$Header .= "\nDatum/Zeit: ";
$Header .= date("d.m.Y H:i:s");
mail($Empfaenger, $Mailbetreff, "", $Header);
echo"<p align=\"center\">Vielen Dank!<br />Wir werden uns umgehend bei Ihnen melden!<br /><br /><b><a href=\"javascript:history.back();\">zurück</a></p></b>";
}
Kommentar
-
Kannst ja mal versuchen, Dir statt cycaps
PHP-Code:$mail .=
PHP-Code:$Header .=
[COLOR="#F5F5FF"]--[/COLOR]
[COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
„Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
[URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
[COLOR="#F5F5FF"]
--[/COLOR]
Kommentar
-
Zuletzt geändert von pixelprinzessin; 25.06.2008, 15:12.PHP-Code:$arr = array(
'E-Mailadresse' => $_POST['email'],
'Strasse' => $_POST['strasse'],
'Postleitzahk' => $_POST['plz']
);
$Mailbetreff = "betreff";
$Trenner = md5(uniqid(time()));
$Header = "From: ".$_REQUEST['email'];
$Header .= "\n";
$Header .= "MIME-Version: 1.0";
$Header .= "\n";
$Header .= "Content-Type: multipart/mixed; boundary=$Trenner";
$Header .= "\n\n";
$Header .= "This is a multi-part message in MIME format";
$Header .= "\n";
$Header .= "--$Trenner";
$Header .= "\n";
$Header .= "Content-Type: text/plain";
$Header .= "\n";
$Header .= "Content-Transfer-Encoding: 8bit";
$Header .= "\n\n";
$Header .= "Sie haben folgende Nachricht erhalten: \n\n";
if($Formularfeld!="senden" && $Formularfeld!="Anhang")
{
foreach($arr as $key => $value)
{
if(!empty($value))
{
$Header .= "$key: $value\n";
}
}
foreach($_POST['tarifmerkmale'] as $value)
{
$Header .= " - " .$value. "\n";
}
$Header .= "IP: ".$ip."\n";
}
$Header .= "\nDatum/Zeit: ";
$Header .= date("d.m.Y H:i:s");
mail($Empfaenger, $Mailbetreff, "", $Header);
echo"<p align=\"center\">Vielen Dank!<br />Wir werden uns umgehend bei Ihnen melden!<br /><br /><b><a href=\"javascript:history.back();\">zurück</a></p></b>";
}
edit: jetz hab ich aber zweimal die variable value, weil ja schon eine Funktion da ist, dass nur die Checkbox da ist die angeklickt wurde..... OMG, dann ist das doch eigtl so gut wie das gleiche nachdem ich die ganze Zeit Frage oder??? ahhh jetz versteh ich nichts mehr... o__0 verwirrung...
Kommentar
Kommentar