Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallo,

ich habe in PHP ein KOntaktformular. Ich habe es auf meinen Webserver hochgeladen. Das Formular funktioniert soweit, wenn ich auf senden klicke, bekomme ich aber keine email. ich bitte um hilfe. danke im voraus.

config.php

<?php

$deinname = "Sascha Graf";

$deinemailadresse = "sascha-graf1@gmx.de";

?>

index.php

<html>

<head>

<title>Mein Kontaktformular</title>

<meta name="author" content="b-projects.de">

<meta http-equiv="content-type" content="text/html; charset=ISO-8859- 1">

<link rel="stylesheet" type="text/css" href="style.css">

</head>

<body>

<div align="center">

<br><br>

<?php

include "config.php";

// wurde auf ABSCHICKEN geklickt?

if(isset($_POST["submit"]))

{

// es wurde kein Name eingetragen

if(!$_POST["name"] || empty($_POST["name"])) { ?>

<div align="center"><span class="mail">Du hast folgende Angabe vergessen einzutragen: Name.</span> <a href="<?php echo $_SERVER["PHP_SELF"]; ?>" title="zurück">zurück</a></div>

<?php }

// es wurde keine E-Mail Adresse eingetragen

elseif(!$_POST["email"] || empty($_POST["email"])) { ?>

<div align="center"><span class="mail">Du hast folgende Angabe vergessen einzutragen: eMail-Adresse.</span> <a href="<?php echo $_SERVER["PHP_SELF"]; ?>" title="zurück">zurück</a></div>

<?php }

// es wurde keine Nachricht eingetragen

elseif(!$_POST["nachricht"] || empty($_POST["nachricht"])) { ?>

<div align="center"><span class="mail">Du hast folgende Angabe vergessen einzutragen: Nachricht.</span> <a href="<?php echo $_SERVER["PHP_SELF"]; ?>" title="zurück">zurück</a></div>

<?php }

// ist alles Eingetragen dann

else

{

// Erzeuge den E-Mail Header

// E-Mail Absender

$header.="From: \"".$_POST["name"]."\" <".$_POST["email"].">\n";

// Domain also was in der Mailadresse hinter dem ‘@’ steht

$header.="Organization: ".substr($deinemailadresse,strpos($deinemailadresse,"@"))."\n";

// Format der Mail

$header.="Content-Type: text/plain;\n";

// Name des Mailprogramms, hier die PHP-Version

$header.="X-Mailer: PHP/".phpversion();

// Die Nachricht

$nachricht1 = "".$_POST["nachricht"]."\n\n";

// Mail wird nun verschickt

mail("\"".$deinname."\" <".$deinemailadresse.">",$betreff,$nachricht1, $header);

// Betreff der Dankesmail

$betreff_danke = "Vielen Dank";

// Text der Dankesmail

$body_danke = "Hallo ".$_POST["name"].",\n\nDanke für deine Nachricht!\n\nSie erhalten in Kürze Antwort von mir.\n\n\nMit freundlichen Gruessen\n\n".$deinname."\n\n--\n\nIhre Nachricht:\n\n".$nachricht1."";

// Header für die Dankesmail, analog zu oben

$header_danke.="\"".$deinname."\" <".$deinemailadresse.">";

$header_danke.="Organization: ".substr($deinemailadresse,strpos($deinemailadresse,"@"))."\n";

$header_danke.="Content-Type: text/plain;\n";

$header_danke.="X-Mailer: PHP/".phpversion();

// Senden von der Dankmail

mail("\"".$_POST["name"]."\" <".$_POST["email"].">",$betreff_danke,$body_danke,$header_danke);

?>

<table border="0"><tr><td colspan="2" align="left">

<span class="mail">Vielen Dank für folgende Nachricht</span></td></tr>

<tr><td colspan="2" align="center"> </td></tr>

<tr><td><span class="mail">Dein Name:</span></td><td><?php echo $_POST["name"]; ?></td></tr>

<tr><td><span class="mail">Deine eMail-Adresse:</span></td><td><a href="mailto:<?php echo $_POST["email"]; ?>"><?php echo $_POST["email"]; ?></a></td></tr>

<?php } ?>

<tr><td valign="top"><span class="mail">Deine Nachricht:</b></td><td><?php echo nl2br($_POST["nachricht"]); ?></td></tr><tr>

<tr><td colspan="2" align="center"> </td></tr>

<td colspan="2" align="center"><span class="mail">Eine Dankes-eMail von mir ist bereits unterwegs!</span></td></tr></table>

<?php

} // end alles eingetragen

// wenn nicht gesendet, Mailformular ausgeben

else

{

?>

<form action="<?php echo $_SERVER["PHP_SELF"]; ?>" method="post">

<table border="0" cellspacing="0" cellpadding="5">

<tr>

<td>Dein Name:</span></td>

<td><input type="text" name="name" class="formular"></td>

</tr>

<tr>

<td>Betreff:</td>

<td><input type="text" name="betreff" class="formular"></td>

</tr>

<tr>

<td>Deine eMail-Adresse</td>

<td><input type="text" name="email" class="formular"></td>

</tr>

<tr>

<td valign="top">Deine Nachricht:</td>

<td><textarea name="nachricht" cols="50" rows="5" class="feld"></textarea></td>

</tr>

<tr>

<td> </td>

<td align="left"><input type="reset" value="zurücksetzen" class="formular"> <input type="submit" value="abschicken" name="submit" class="formular"></td>

</tr>

</table>

</form>

<!-- end nicht gesendet -->

<?php } ?>

</div>

</body>

</html>

gruss

sascha

Geschrieben

Nicht jeder Anbieter erlaubt es Mails über den mail-Befehl von PHP zu senden. Logging einschalten, so dass Du siehst ob Mail ohne Fehler ausgeführt wird.

Weiterhin blockieren Mailserver Mails die nicht korrekt formatiert sind: Deine Mail hat \n, wenn ich das richtig im Kopf habe, schreibt der RFC Standard \r\n als Line-Delimiter vor. Ich würde Dir raten, die Mail und Mime Klassen aus dem Pear Repository, damit Du sicherstellst, dass die Mail der gültigen Norm entspricht

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...