Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

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

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

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.