Eine eMail mit sendMail() automatisch versenden - PHP

Mit diesem kleinen Script realisieren Sie einen Mailversandt mit Standard PHP und einer Sperrliste die den Versand abbricht wenn Sperrworte enthalten sind.

WordPress 5

WordPress 5 - Erstellen Sie einen Blog oder eine Website - Mit WordPress können Sie ohne Programmierkenntnisse ein Blog oder eine responsive Website erstellen. In diesem Buch lernen Sie alles, was erforderlich ist. Praxisszenarien für typische Einsatzzwecke unterstützen Sie. Der Rohling steht, nun folgt der Feinschliff - Mithilfe von SEO, Online-Marketing und gutem Content bringen Sie Ihr Projekt auf Kurs. (*

kaufen...

Mit diesem PHP-Script wird ein einfacher Mailversand realisiert. Erzeugen Sie noch eine Eingabemaske und schon können Sie dieses Programm in Ihre Webseite einhängen:

001  <?php
002  //send_email.php
003  $email_from         = "ed.niamod@rednesba‎";   //Absender falls keiner angegeben wurde
004  $sendermail_antwort = true;      //E-Mail Adresse des Besuchers als Absender. false= Nein ; true = Ja
005  $name_von_emailfeld = "Email";   //Feld in der die Absenderadresse steht
006
007  $empfaenger = "ed.niamod@tkatnok‎"; //Empfaenger-Adresse
008  $mail_cc    = ""; //CC-Adresse, diese E-Mail-Adresse bekommt einer weitere Kopie
009  $betreff    = "Anfrage zur Erstellung einer Webseite"; //Betreff der Email
010
011  $url_ok     = "meldung-ok.html"; //Zielseite, wenn E-Mail erfolgreich versendet wurde
012  $url_fehler = "meldung-nook.html"; //Zielseite, wenn E-Mail nicht gesendet werden konnte
013
014  //Diese Felder werden nicht in der Mail stehen
015  $ignore_fields = array('submit');
016  
017  //Datum, wann die Mail erstellt wurde
018  $name_tag = array("Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag");
019  $num_tag  = date("w");
020  $tag      = $name_tag[$num_tag];
021  $jahr     = date("Y");
022  $n        = date("d");
023  $monat    = date("m");
024  $time     = date("H:i");
025
026  //Erste Zeile unserer Email
027  $msg = ":: Gesendet am $tag, den $n.$monat.$jahr - $time Uhr ::\n\n";
028
029  //Hier werden alle Eingabefelder abgefragt
030  foreach($_POST as $name => $value) {
031     if (in_array($name, $ignore_fields)) {
032          continue; //Ignore Felder wird nicht in die Mail eingefuegt
033     }
034     $msg .= "::: $name :::\n$value\n\n";
035  }
036
037  //E-Mail Adresse des Besuchers als Absender
038  if ($sendermail_antwort and isset($_POST[$name_von_emailfeld]) and filter_var($_POST[$name_von_emailfeld], FILTER_VALIDATE_EMAIL)) {
039     $email_from = $_POST[$name_von_emailfeld];
040  }
041
042  $header="From: $email_from";
043
044  if (!empty($mail_cc)) {
045     $header .= "\n";
046     $header .= "Cc: $mail_cc";
047  }
048
049  //Email als UTF-8 senden
050  $header .= "\nContent-type: text/plain; charset=utf-8";
051
052  /**
053   * Eine Blackliste für den Inhalt der Mail pflegen. Wenn der Text der Mail einen
054   * der folgenden Begriffe enthält, wird der Versandt unterbrochen. Der Leser
055   * bekommt eine entsprechende Meldung
056   */
057
058  $blacklist = array('sex', 'date', 'babe', 'yandex', 'money', 'porn', 'money', 'income', '$', 'script', 'cryptocurrency', 'trading', 'investing');
059  $fehler    = false;
060    foreach ($blacklist as $value) {
061      if (strpos(strtolower($msg), $value)) {
062      $fehler = true;
063    }
064  }
065  //- Blackliste Ende -
066
067  if ($fehler) {
068    $mail_senden = false;
069  } else {
070    $mail_senden = mail($empfaenger,$betreff,$msg,$header);
071  }
072  
073  //Weiterleitung, hier konnte jetzt per echo auch Ausgaben stehen
074  if($mail_senden){
075    header("Location: ".$url_ok); //Mail wurde gesendet
076    exit();
077  } else{
078    header("Location: ".$url_fehler); //Fehler beim Senden
079    exit();
080  }
081  ?>

Tags: Mail • Send • eMail • Nachricht
Datum: 01.12.2021
Autor: Oliver Lohse

Weitere passende Artikel

_____

Contact3 Hooks das Mailformular einbinden - Bludit CMS

Mail • Kontakt • Hooks • Plugin
Blenden Sie das Kontaktformular Plugin Contact3 immer oben auf der Kontaktseite ein. Durch die Änderung des so genannten Hook ist dies einfach möglich.

Einfacher SPAM Schutz im Kontaktformular - Bludit CMS

Mail • Kontakt • SPAM • Schutz
Wenn Sie das Bludit-Plugin Contact3 nutzen, können Sie in diesem Plugin eine einfache und wirkungsvolle Blackliste einbauen, die den Inhalt Ihrer Mail prüft
WordPress Easy - Redaktion

About me

Mein Name ist Oliver Lohse. Ich bin diplomierter Wirtschafts-Informatiker und Organisations-Programmierer in verschiedenen Programmier-Sprachen und Markup-Dialekten, z.B. Java, JEE, COBOL, PHP, Python, MySQL, HTML, CSS, ANSI C, Lisp, Rexx, JavaScript, Scheme, ActionScript 2.0, Maschinensprache, Assembler und JCL. Seit mehr als 24 Jahren arbeite ich als Entwickler in einem großen Softwareunternehmen für Versicherungen in Hannover Niedersachsen und seit etwa 37 Jahren im EDV-Sektor mit wechselnden Aufgaben.