Email Senden mit PHP / Spam Schutz

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

      Email Senden mit PHP / Spam Schutz

      Hallo Leute. Ich habe eine kleine Homepage mit einem Kontakt Formular.
      In diesem Kontaktformular wird der Name, die Email und ein Text durch einen Button "Senden" weitergeleitet zu meinem email_sent.php.

      Dieser sieht wie folgt aus:


      Spoiler anzeigen

      PHP-Quellcode

      1. <?php
      2. $username = $_REQUEST['f_name'];
      3. $useremail = $_REQUEST['f_email'];
      4. $usertext = $_REQUEST['f_message'];
      5. $sender = "SUPPORT";
      6. $empfaenger = "[email protected]";
      7. $betreff = "Mail: $useremail";
      8. $betreffcopy = "(COPY) Mail: $useremail";
      9. $mailtext = "NAME: $username .\n USER EMAIL: $useremail .\n \n \n USER TEXT MESSAGE: $usertext ";
      10. $mailtextcopy = "NAME: $username .\n USER EMAIL: $useremail .\n \n \n USER TEXT MESSAGE: $usertext \n \n \n This email is a copy. We will contact you very soon! If you get no response from us after 48 hours, please send us an email again.";
      11. mail($empfaenger, $betreff, $mailtext, "From: $sender ");
      12. mail($useremail, $betreffcopy, $mailtextcopy, "From: $sender ");
      13. ?>
      14. <html>
      15. <meta http-equiv="refresh" content="0; URL=emailsentmessage.html">
      16. </html>
      Alles anzeigen



      Der eingegebene Name, Email und Text wird auf die PHP weitergeleitet.
      Ich bekomme dann diese Email zugeschickt auf meine private Email Adresse.
      Der Kunde oder die Person die mir eine Email schreibt bekommt auch eine Kopie der Email zugeschickt.
      Am ende wird durch einen meta Eintrag weitergeleitet zu emailsentmessage.html wo nur steht das die Email erfolgreich versendet wurde.


      Problem:
      Irgendwelche Pappnasen spammen mir den ganzen Tag die Email voll mit Nachrichten / Spam.
      Gibt es eine Möglichkeit wie ich einen Email Filter in meinen Code einbaue.
      So dass wenn email [email protected] eingegeben wird, wird die email nicht verschickt.

      Bin leider nicht ganz so fit in Php, hoffe einer kann mir dabei helfen.

      Soll wirklich simpel sein, brauche nichts großartiges.

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von florian0 () aus folgendem Grund: (florian0)PHP-Tags ergänzt

      Ja wie gesagt Ich bin nicht wirklich fit in php, habe mir das selber zusammen gecodet.
      Normalerweiße hatte ich bis jetzt nie wirklich Probleme, ich wollte den Personen eine einfache Möglichkeit bieten mir eine Nachricht zukommen zu lassen.
      Leider wird das nur noch zugespammt und ich weiß nicht richtig was ich machen soll dagegen.
      Captcha hört sich aber gut an.
      Mit Sessions kenne Ich mich überhaupt nicht aus.
      Am besten nutzt du einen Service der die Überprüfung für dich übernimmt.
      Diese Services benutzen eine große Datenbank an Spam mails.

      spamcheck.postmarkapp.com/doc

      hangman schrieb:

      Wenn es bei der deutschen Sprache eine Syntax Prüfung gäbe, wären so einige Menschen stumm


      Mir fällt grade auf das dieser Service den Inhalt einer email überprüft und nicht die Adresse des Absenders.

      Hier trotzdem ein Beispiel zur Nutzung.

      Quellcode

      1. $data = array(
      2. 'email' => 'sample mail content',
      3. 'options' => 'short'
      4. );
      5. $ch = curl_init('http://spamcheck.postmarkapp.com/filter');
      6. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
      7. curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-type: application/json"));
      8. curl_setopt($ch, CURLOPT_POST, true);
      9. curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
      10. $response = json_decode(curl_exec($ch));
      11. if (!empty($response->success)) {
      12. // here you can check the score to validate the email content
      13. }
      Alles anzeigen

      hangman schrieb:

      Wenn es bei der deutschen Sprache eine Syntax Prüfung gäbe, wären so einige Menschen stumm