kostenloser Webspace werbefrei: lima-city


mail() mit php - Nachricht formatieren

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    uniquemagica-rpg

    Kostenloser Webspace von uniquemagica-rpg

    uniquemagica-rpg hat kostenlosen Webspace.

    Hallo,
    und zwar mache ich einen Kurs im Internet, um mir php beizubringen.
    Da sind folgende Fragen gestellt worden, die ich ums verrecken nicht kapiere, um sie richtig auszuführen:

    3.5.1 Gib die übersandten Werte Name, E-mail, Betreff und Nachricht auf der Antwortseite noch einmal aus, damit dein Besucher seine Angaben noch einmal sehen kann.

    3.5.2 Du möchtest gerne wissen, von wo die E-mail abgeschickt wurde und schreibst dir selbst die Gedankenstütze, z. B. 'E-mail von meiner PHP Page', an den Anfang deiner E-mail. Wie sieht die neue Formatierung aus?

    3.5.3 Wie müsste die mail() Funktion aussehen, wenn du einen vordefinierten Betreff, z.B Kontaktformular, angibst?

    Dazu habe ich dann folgende Codes mit einer Vorlage aus dem Kurs zusammengebastelt:

    formular.php
    <?php
    	echo"<html>
    		<form action='index.php?Seite=email_senden.php' method='POST'>";
    
    		// HTML Code für das Formular
    		echo"	<b>Betreff:</b> <input type='text' name='Betreff' size='50'><br>
    			<b>Spielername:</b> <input type='text' name='Spielername' size='44'><br>
    			<b>E-Mail:</b> <input type='text' name='Spielername' size='50'><br>
    			<textarea name='Nachricht' cols='45' rows='15'></textarea><br><br>
    			<input type='submit' name='Abschicken' value='Abschicken'>";
    	echo"</form>
    	</html>";
    ?>


    und email_senden.php
    <?php
    	
    	$Mitteilung="Absender: " .$_POST['Spielername']."\n".
    	"E-Mail: " .$_POST['E-Mail']."\n".
    	"Nachricht: " .$_POST['Nachricht'];
    	
    		mail ("meine@mail.com", $_POST['Betreff'], $Mitteilung, "From:".$_POST['Spielername']." <".$_POST['E-Mail'].">");
    	echo"<html>
    	<body>";
    
    	echo"	<p align='center'>E-Mail wurde erfolgreich gesendet mit den folgenden Daten:<br><br>
    		$Mitteilung<br><br>
    		Wir bemühen uns so schnell wie möglich deine Anfrage zu bearbeiten.</p>";
    
    	echo"</html>";
    ?>


    Doch ich bekomm nach dem Absenden des Formulars nur einen leeren 'Hintergrund', statt ich dann die Nachricht 'E-Mail wurde erfolgreich gesendet..' angezeigt bekomme.
    Und als ich das mal geschafft hatte, stand nur 'Absender: blubb@mail.de E-Mail: Nachricht: blubb' dran.
    Wo bleibt da der Spielername? Die empfangene Mail kam dann auch so an:

    > blubb@mail.de über lima-mail.de
    an mich

    Absender:blubb@mail.de
    E-Mail:

    Nachricht:blubb



    Ich hatte immer alles ausgefüllt gehabt in dem Formular..
    Ich verzweifle regelrecht an diesem dummen Skript ;___;

    Ich hoffe, mir kann geholfen werden. Danke schonmal im Voraus.
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Musst wohl noch mal das Thema Variablen behandeln?
    email_senden.php
    <?php
    	
    	$Mitteilung="Absender: " .$_POST['Spielername']."\n".
    	"E-Mail: " .$_POST['E-Mail']."\n".
    	"Nachricht: " .$_POST['Nachricht'];
    	
    		mail ("meine@mail.com", "'E-mail von meiner PHP Page".$_POST['Betreff'], $Mitteilung, "From:".$_POST['Spielername']." <".$_POST['E-Mail'].">");
    	echo"<html>
    	<body>\n";
    
    	echo"	<p align='center'>Hallo ".$_POST['Spielername']."<br><br>
    	 Deine E-Mail wurde erfolgreich gesendet mit den folgenden Daten:<br><br>
    		".$_POST['Nachricht']."<br><br>
    		und der Email Adresse ".$_POST['E-Mail']."
    		Wir bemühen uns so schnell wie möglich deine Anfrage zu bearbeiten.</p>\n";
    echo "</body>\n";
    	echo"</html>";
    ?>


  4. Autor dieses Themas

    uniquemagica-rpg

    Kostenloser Webspace von uniquemagica-rpg

    uniquemagica-rpg hat kostenlosen Webspace.

    email_senden.php
    <?php
    	
    	$Mitteilung="Absender: " .$_POST['Spielername']."\n".
    	"E-Mail: " .$_POST['E-Mail']."\n".
    	"Nachricht: " .$_POST['Nachricht'];
    	
    		mail ("meine@mail.com", "'E-mail von meiner PHP Page".$_POST['Betreff'], $Mitteilung, "From:".$_POST['Spielername']." <".$_POST['E-Mail'].">");
    	echo"<html>
    	<body>\n";
    
    	echo"	<p align='center'>Hallo ".$_POST['Spielername']."<br><br>
    	 Deine E-Mail wurde erfolgreich gesendet mit den folgenden Daten:<br><br>
    		".$_POST['Nachricht']."<br><br>
    		und der Email Adresse ".$_POST['E-Mail']."
    		Wir bemühen uns so schnell wie möglich deine Anfrage zu bearbeiten.</p>\n";
    echo "</body>\n";
    	echo"</html>";
    ?>

    Diesen Code habe ich angewendet, aber da kam trotzdem kein Spielername in der Bestätigung, bzw als Spielername stand die e-mail dran und bei email stand nix dran..

    Beitrag zuletzt geändert: 25.2.2014 15:57:45 von uniquemagica-rpg
  5. Du solltest die POST Variablen mal mit deinem Kontaktformular abgleichen.

    Bei Betreff hast du etwas anderes im Name Attribut stehen und bei E-Mail steht auch etwas anderes im name Attribut.

    Ich bin zumindest davon ausgegangen, daß du zumindest schon soviel HTML-Kenntnisse besitzt und auch die POST Daten in PHP abfangen kannst.
  6. Autor dieses Themas

    uniquemagica-rpg

    Kostenloser Webspace von uniquemagica-rpg

    uniquemagica-rpg hat kostenlosen Webspace.

    Ich hab das Grundlegendste von HTML einigermaßen drauf, aber ich bin eben noch sehr frisch drin.
    Nicht umsonst frage ich 'so dumm'.. Ich check diesen E-Mail-Versand einfach nicht..... -.-

    Ich habs nochmal bearbeitet, aber der leere Hintergrund bleibt gleich... Es will einfach nicht gehen -.-
    formular.php
    <?php
    	echo"<html>
    		<form action='index.php?Seite=email_senden.php' method='POST'>";
    
    		// HTML Code für das Formular
    		echo"	<b>Betreff:</b> <input type='text' name='Betreff' size='50'><br>
    			<b>Spielername:</b> <input type='text' name='Spielername' size='44'><br>
    			<b>E-Mail:</b> <input type='text' name='E-Mail' size='50'><br>
    			<textarea name='Nachricht' cols='45' rows='15'></textarea><br><br>
    			<input type='submit' name='Abschicken' value='Abschicken'>";
    	echo"</form>
    	</html>";
    ?>


    email_senden.php
    <?php
    	
    	$Mitteilung="Absender: " .$_POST['Spielername']."\n".
    	"E-Mail: " .$_POST['E-Mail']."\n".
    	"Nachricht: " .$_POST['Nachricht'];
    	
    		mail ("meine@mail.com", "php-seite-mail", .$_POST['Betreff'], $Mitteilung, "From:".$_POST['Spielername']. "<'.$_POST['E-Mail']'>");
    	echo"<html>
    	<body>\n";
    
    	echo"	<p align='center'>Hallo ".$_POST['Spielername']."<br><br>
    		Deine E-Mail wurde erfolgreich gesendet mit den folgenden Daten:<br><br>
    		".$_POST['Betreff']."<br>
    		".$_POST['E-Mail']."<br>
    		".$_POST['Nachricht']."<br><br>
    		Wir bemühen uns so schnell wie möglich deine Anfrage zu bearbeiten.</p>\n";
    echo "</body>\n";
    	echo"</html>";
    ?>
  7. Hier war nur ein Komma zuviel:

    mail ("meine@mail.com", "php-seite-mail" .$_POST['Betreff'], $Mitteilung, "From:".$_POST['Spielername']. "<'.$_POST['E-Mail']'>");

  8. Autor dieses Themas

    uniquemagica-rpg

    Kostenloser Webspace von uniquemagica-rpg

    uniquemagica-rpg hat kostenlosen Webspace.

    Auch ohne Komma ändert sich nix.. Die Bestätigung bleibt aus, nur leerer Hintergrund..
  9. Versuch mal:

    mail ("meine@mail.com", "php-seite-mail" .$_POST['Betreff'], $Mitteilung, "From:".$_POST['Spielername']. "<".$_POST['E-Mail'].">");


    Es waren da noch zwei Fehler drin.
  10. Autor dieses Themas

    uniquemagica-rpg

    Kostenloser Webspace von uniquemagica-rpg

    uniquemagica-rpg hat kostenlosen Webspace.

    Dieser letzte Code hat prima funktioniert.

    Und die zwei Fehler habe ich nun auch entdeckt. Das war ja ne Geburt xD

    Vielen vielen Dank :)


    EDIT:
    Jedoch bleibt noch die folgende Frage offen:
    3.5.3 Wie müsste die mail() Funktion aussehen, wenn du einen vordefinierten Betreff, z.B Kontaktformular, angibst?

    Beitrag zuletzt geändert: 25.2.2014 19:13:14 von uniquemagica-rpg
  11. Nur das
    .$_POST['Betreff']


    weglassen. Dann kommt bei dir nur noch php-seite-mail als Betreff an.
  12. Autor dieses Themas

    uniquemagica-rpg

    Kostenloser Webspace von uniquemagica-rpg

    uniquemagica-rpg hat kostenlosen Webspace.

    Achsoo :D Gleich mal getestet und es hat geklappt. Vielen Dank nochmal :D
    Dann wäre das alles ja geklärt. Nun kann ich endlich fortfahren in meinem Kurs.
  13. ich danke auch, hatte ein ähnliches probelm und die hilfe hier hat mir auch gehelft ^^

    Aber mal eine andere Frage: Wenn ich bestimmte Buchstaben (ü) im Formular hab und dann per mail() verschick kommt
    (ü) an ... gibt's da eine Möglichkeit das korrekt darzustellen?

    Beitrag zuletzt geändert: 14.4.2014 0:34:48 von danielmi
  14. werbeparadise

    werbeparadise hat kostenlosen Webspace.

    danielmi schrieb:
    ich danke auch, hatte ein ähnliches probelm und die hilfe hier hat mir auch gehelft ^^

    Aber mal eine andere Frage: Wenn ich bestimmte Buchstaben (ü) im Formular hab und dann per mail() verschick kommt
    (ü) an ... gibt's da eine Möglichkeit das korrekt darzustellen?


    Versuch mal das:

    Zeichen - - Ersetzung
    ä= &auml;
    Ä= &Auml;
    ö= &ouml;
    Ö= &Ouml;
    ü= &uuml;
    Ü= &Uuml;
    ß= &szlig;

    Das linke ist das zu ersetzende Zeichen. Alles ab diesen Zeichen & musst du beginnen bis zu ; Das = ignorieren.

    Beitrag zuletzt geändert: 14.4.2014 11:51:18 von werbeparadise
  15. danielmi schrieb:
    ich danke auch, hatte ein ähnliches probelm und die hilfe hier hat mir auch gehelft ^^

    Aber mal eine andere Frage: Wenn ich bestimmte Buchstaben (ü) im Formular hab und dann per mail() verschick kommt
    (ü) an ... gibt's da eine Möglichkeit das korrekt darzustellen?


    Du solltest Sonderzeichen und Umlaute nie direkt mitsenden sonst bekommst Du Schwierigkeiten bei der Zeichendarstellung aufgrund unterschiedlicher Codetables :wink:

    Also vorher bitte wandeln!

    Siehe auch: http://www.designerzone.de/webdesign-tipps-html-sonderzeichen-liste.php :wave:
  16. m******e

    Eigentlich reicht schon die Angabe des richtigen Zeichensatzes im Header der mail (und im HTML der darstellenden Webseite).

    Es | gibt | zahlreiche | Beispiele | zu | dem | Thema. | Und | Google.
  17. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!