Einfacher SPAM Schutz

Wenn Sie das Bludit-Plugin Contact3 nutzen, dann können Sie in diesem Plugin eine ganz einfache und wirkungsvolle Blackliste einbauen, die den Inhalt Ihrer Mail prüft.

Das Kontaktformular Contact3 ist für das CMS Bludit zu Quasistandard geworden. Es ist möglich die Google-Captcha mit einzubinden - ich persönlich mag Google-Produkte überhaupt nicht und lehen diese ab. Mit ein paar Zeilen Code in der Datei bl-plugins/contact3/plugin.php, peppen Sie das Plugin für Bludit deutlich auf und bringen Ruhe in Ihr Postfach.

...
320  private function validatePost(){
321    
322    //----------------------------------------------
323    // Eine Blackliste setzen
324    //----------------------------------------------
325    $blacklist = array('sex', 'date', 'babe', 'yandex',
326                       'money', 'porn');
327    $fehler = false;
328    foreach ($blacklist as $value) {
329      if (strpos(strtolower($this->message), $value)) {
330        $fehler = true;
331      }
332    }
333    //----------------------------------------------
334    
335    global $L;
336    if(trim($this->senderName)==='')
337      $error = $L->get('Please enter your name');                            
338    elseif(trim($this->senderEmail)==='')
339      $error = $L->get('Please enter a valid email address');
340    elseif(trim($this->message)==='')
341      $error = $L->get('Please enter the content of your message');
342    elseif ($this->getValue('gdpr-checkbox') && !$_POST['gdpr-checkbox']) {
343      $error = $L->get('Please accept the privacy policy');
344    }
345    //----------------------------------------------
346    // Den originalen ELSEIF ersetzen durch $FEHLER
347    //----------------------------------------------
348    //elseif(!$this->reCaptchaResult){
349    elseif($fehler){
350      $error = $L->get('Please check that you are not a robot');
351    }
352    else
353      $error = false;
354    return $error;
355  }
...

Zeile 322...333 müssen Sie neu eintippen oder aus dem Beispiel oben herauskopieren und in die Methode validatePost() einfügen. Diese Methode ist grundsätzlich mit der Prüfung der Mail beauftragt und Ihr neues Coding ist daher dort gut aufgehoben. Mit diesem Codeabschnitt legen Sie eine Sperrliste ($blacklist) mit Bgeriffen an, mit denen Sie Roboter oder Spam erkennen möchten - ich habe bereits einige populäre Wörter eingetragen, die Sie noch erweitern können. Die Schleife in 328 durchsucht den Mitteilungstext nach Wörtern der Sperrliste und setzt das Ergebnis ($fehler) auf true wenn ein "böses Wort" gefunden wurde.

Zeile 348 ist die originale Implementierung des Captcha von Google an den Sie sich gleich dranhängen können. Ich habe in Zeil 349 den elseif neu aufgebaut, um den Zustand von $fehler auszuwerten, welcher true ist wenn die Schleife oben eines der Sperrwörter aus der Blacklist im Text der Mail entdeckt hat.

Ist im Text der Mail eines der Sperrwörter aus der Blacklist enthalten, dann kann die Mail nicht versendet werden, es kommt die Fehlermeldung aus Zeile 350 (allerdings in deutsch). Bei Bedarf können Sie diese Meldung auch umschreiben. Normalerweise wird sie vom Language-Paket ins deutsche übersetzt, wenn er die neue Meldung nicht im Paket findet, dann gibt Bludit die Meldung aus die Sie im Quellcode vorgegeben haben.

SEO - Die Suchmaschinen-Optimierung ist eine der wichtigsten Disziplinen im Online-Marketing. Wenn es Ihnen darum geht, für Ihre Webseite oder Ihren Webshop ein Top-Ranking in den SERPs zu erzielen, müssen Sie wissen, wie Suchmaschinen ticken und welche Stellschrauben Sie wie einstellen. Sebastian Erlhofers SEO-Handbuch ist für Ihre SEO-Ausbildung ein wichtiger Begleiter und ein Quell an Wissen, aus dem Sie Praxiswissen und Profitipps schöpfen.

Über Amazon unterstützen

lesen...

© CMSWorkbench.de

mail spam schutz filter

about me

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.