Mit diesem kleinen Script realisieren Sie einen Mailversandt mit Standard PHP und einer Sperrliste die den Versand abbricht wenn Sperrworte enthalten sind. 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 ?>