Managed Server
Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: AOL E-Mail Adressen blockieren

    preisladen

    • Neu im Forum
    • Beiträge: 4
    AOL E-Mail Adressen blockieren
    am: 10. März 2011, 05:53:16
    Hallo Zusammen,

    ich habe immer wieder das Problem, dass meine Kunden manche E-Mails als Spam bei AOL markieren. Dann kann ich keine Mails mehr an AOL Kunden senden.

    Kann ich eigentlich den Kunden dazu zwingen, dass er keine AOL E-Mail Adresse bei der Registrierung angeben darf, sondern eine alternative angibt?

    Das Problem ist, ich habe ein an meiner IP Adresse über 20 Domains von diversen Kunden und alle können dann AOL Kunden keine E-Mails senden.

    Über eure Hilfe wäre ich dankbar.

    Lg

    Serkan



    Linkback: https://www.modified-shop.org/forum/index.php?topic=11546.0

    GTB

    • modified Team
    • Gravatar
    • Beiträge: 6.306
    • Geschlecht:
    AOL E-Mail Adressen blockieren
    Antwort #1 am: 10. März 2011, 07:37:58
    Du willst bei der Registrierung AOL Adressen blockieren ?

    Was ist mit Kontaktformular ?

    Phantom

    • Fördermitglied
    • Beiträge: 429
    AOL E-Mail Adressen blockieren
    Antwort #2 am: 10. März 2011, 07:38:08
    in xtc_validate_email.inc.php

    suchen

    Code: PHP  [Auswählen]
    function xtc_validate_email($email) {
        $valid_address = true;
    ersetzen

    Code: PHP  [Auswählen]
    function xtc_validate_email($email) {

        $fehler_domain = array("aol.de","rcor.de","acor.de","gx.de","mx.de","eb.de","wb.de","onliene.de","onlin.de","onlein.de","t-onine.de","t-onlein.de","-online.de","t.online.de","t-onlie.de","tonline.de","t-onlin.de","tonlin.de","-tonline.de","t-oneline.de","tiscali.de","12move.de","netscape.de");

        $valid_address = true;
    Der erste Eintrag stoppt die AOL-User, der Rest checkt auch noch auf Tippfehler.

    Clever

    • Schreiberling
    • Beiträge: 257
    AOL E-Mail Adressen blockieren
    Antwort #3 am: 10. März 2011, 08:17:34
    sie einfach so auszusperren wäre vielleicht ein wenig grob ?
    wenn man keine alo mails zulassen möchte, dann sollte man den Kunden bei der Aufforderung eine Email anzugeben auch aufklären...

    GTB

    • modified Team
    • Gravatar
    • Beiträge: 6.306
    • Geschlecht:
    AOL E-Mail Adressen blockieren
    Antwort #4 am: 10. März 2011, 08:30:10
    du kannst einfach bei der Registrierung prüfen und einen Hinweis ausgeben lassen.

    Dazu in der create_account.php den Teil hier:

    Code: PHP  [Auswählen]
    //BOF - Hetfield - 2009-08-15 - confirm e-mail at registration
    ...
    //EOF - Hetfield - 2009-08-15 - confirm e-mail at registration
     
    mit dem hier ersetzen:

    Code: PHP  [Auswählen]
            //BOF - Hetfield - 2009-08-15 - confirm e-mail at registration
            if (strlen($email_address) <ENTRY_EMAIL_ADDRESS_MIN_LENGTH) {
                    $error = true;
                    $messageStack->add('create_account', ENTRY_EMAIL_ADDRESS_ERROR);
            } elseif (xtc_validate_email($email_address) == false) {
                    $error = true;
                    $messageStack->add('create_account', ENTRY_EMAIL_ADDRESS_CHECK_ERROR);
            } elseif ($email_address != $confirm_email_address) {
                    $error = true;
                    $messageStack->add('create_account', ENTRY_EMAIL_ERROR_NOT_MATCHING);
            } elseif (stripos($email_address, '@aol') !== false) {
                    $error = true;
                    $messageStack->add('create_account', 'Bitte verwenden Sie eine andere eMail Adresse');
            } else {
                    $check_email_query = xtc_db_query("select count(*) as total
                                                                                                            from "
    .TABLE_CUSTOMERS."
                                                                                                            where customers_email_address = '"
    .xtc_db_input($email_address)."'
                                                                                                            and account_type = '0'"
    );
                    $check_email = xtc_db_fetch_array($check_email_query);
                    if ($check_email['total']> 0) {
                            $error = true;
                            $messageStack->add('create_account', ENTRY_EMAIL_ADDRESS_ERROR_EXISTS);
                    }
            }
            //EOF - Hetfield - 2009-08-15 - confirm e-mail at registration
     
    natürlich sollte der Hinweis als Konstante gemacht werden...

    Gruss Gerhard

    preisladen

    • Neu im Forum
    • Beiträge: 4
    AOL E-Mail Adressen blockieren
    Antwort #5 am: 10. März 2011, 08:38:38
    Hallo,

    super vielen Dank, das habe ich gesucht..

    @clever
    Ja, da ich wegen einem Kunden nicht meine IP in die Blacklist haben möchte.. Das Problem wie gesagt ist, dass manche Kunden die Registrierungsmails als Spam markieren. Das hat zur Folge, dass alle meine Webhosting Kunden die unter meiner IP Laufen, keine Mails mehr an AOL kunden schicken können...

    Das ist grob :)

    Danke

    Spegeli

    • Schreiberling
    • Beiträge: 278
    • Geschlecht:
    AOL E-Mail Adressen blockieren
    Antwort #6 am: 12. April 2011, 06:07:11
    du kannst einfach bei der Registrierung prüfen und einen Hinweis ausgeben lassen.

    Dazu in der create_account.php den Teil hier:

    Code: PHP  [Auswählen]
    //BOF - Hetfield - 2009-08-15 - confirm e-mail at registration
    ...
    //EOF - Hetfield - 2009-08-15 - confirm e-mail at registration
     
    mit dem hier ersetzen:

    Code: PHP  [Auswählen]
            //BOF - Hetfield - 2009-08-15 - confirm e-mail at registration
            if (strlen($email_address) <ENTRY_EMAIL_ADDRESS_MIN_LENGTH) {
                    $error = true;
                    $messageStack->add('create_account', ENTRY_EMAIL_ADDRESS_ERROR);
            } elseif (xtc_validate_email($email_address) == false) {
                    $error = true;
                    $messageStack->add('create_account', ENTRY_EMAIL_ADDRESS_CHECK_ERROR);
            } elseif ($email_address != $confirm_email_address) {
                    $error = true;
                    $messageStack->add('create_account', ENTRY_EMAIL_ERROR_NOT_MATCHING);
            } elseif (stripos($email_address, '@aol') !== false) {
                    $error = true;
                    $messageStack->add('create_account', 'Bitte verwenden Sie eine andere eMail Adresse');
            } else {
                    $check_email_query = xtc_db_query("select count(*) as total
                                                                                                            from "
    .TABLE_CUSTOMERS."
                                                                                                            where customers_email_address = '"
    .xtc_db_input($email_address)."'
                                                                                                            and account_type = '0'"
    );
                    $check_email = xtc_db_fetch_array($check_email_query);
                    if ($check_email['total']> 0) {
                            $error = true;
                            $messageStack->add('create_account', ENTRY_EMAIL_ADDRESS_ERROR_EXISTS);
                    }
            }
            //EOF - Hetfield - 2009-08-15 - confirm e-mail at registration
     
    natürlich sollte der Hinweis als Konstante gemacht werden...

    Gruss Gerhard

    Lässt sich die Methode mit der von Phantom Verbinden bzw. erweitern, so dass er mehrere eMail Anbieter checkt?
    Will bei mir nämlich Trash-Mail Anbieter sperren.

    Spegeli

    • Schreiberling
    • Beiträge: 278
    • Geschlecht:
    AOL E-Mail Adressen blockieren
    Antwort #7 am: 13. April 2011, 20:14:54
    Hat keiner 'ne Lösung bzw. kann mir weiter helfen? ^^

    ds170477

    • Fördermitglied
    • Beiträge: 1.522
    • Geschlecht:
    AOL E-Mail Adressen blockieren
    Antwort #8 am: 13. April 2011, 21:06:56
    Hallo,
    erstmal herzlich willkommen im Forum.
    Schau mal in Zeile 11 wo @aol steht. hier musst du deine gewünschten Sperren setzen.

    Natürlich als Aufzählung und Konstante...

    Viel Erfolg, sonst lernt man nix. ;-)

    Gruss

    D.

    Spegeli

    • Schreiberling
    • Beiträge: 278
    • Geschlecht:
    AOL E-Mail Adressen blockieren
    Antwort #9 am: 14. April 2011, 04:25:41
    oh man sorry aber so klugscheißer hasse ich... was der ganze code etc. bedeutet weiss ich aber mit arrays etc. kenn ich mich net aus.
    und ich glaube auch nicht das du das weist, den sonst hättest du hier gleich den lösungsvorschlag gepostet.

    Clever

    • Schreiberling
    • Beiträge: 257
    AOL E-Mail Adressen blockieren
    Antwort #10 am: 14. April 2011, 06:57:27
    Ein Mitbewerber hat dafür im SF einen Beitrag verfasst, den ich nicht verlinke sondern hier poste, da Gäste dort nicht lesen können
    Zitat
    Zur Info:

    xtc_validate_email.inc.php habe ich wegen permanenter Tippfehler grobmotorischer Kunden erweitert:
    Code:

    Code: PHP  [Auswählen]
      function xtc_validate_email($email) {
        $fehler_domain = array("rcor.de","acor.de","gx.de","mx.de","eb.de","wb.de","onliene.de","onlin.de","onlein.de","t-onine.de","t-onlein.de","-online.de","t.online.de","t-onlie.de","tonline.de","t-onlin.de","tonlin.de","-tonline.de","t-oneline.de","tiscali.de","12move.de","netscape.de");
    Das sind die Fehler, die Kunden bei mir permanent gemacht haben. Die letzten 3 Domains gibt es nicht mher.

    Code:

    Code: PHP  [Auswählen]
              // Domain is a name, not an IP
              if (eregi($domain_pat, $domain)) {
    Ersetzen durch
    Code:

    Code: PHP  [Auswählen]
       // Domain is a name, not an IP
              if (eregi($domain_pat, $domain) && !in_array($domain, $fehler_domain)) {
     
    Quelle: xt:C SECURITY FIX für 3.0.4 SP2.1

    dies lässt sich nun beliebig um trashmails ergänzen...so wie Phantom das gemacht hat...einfach weitere filter einsetzen und ...

    Code: PHP  [Auswählen]
    } elseif (stripos($email_address, '@aol') !== false) {
        $error = true;
        $messageStack->add('create_account', 'Bitte verwenden Sie eine andere eMail Adresse');
    sollte sich ändern lassen in:

    Code: PHP  [Auswählen]
    } elseif (stripos($email_address != $fehler_domain) == false) {
        $error = true;
        $messageStack->add('create_account', 'Bitte verwenden Sie eine andere eMail Adresse');
    dennoch solltest Du nicht ganz so grob reagieren hier ...

    Spegeli

    • Schreiberling
    • Beiträge: 278
    • Geschlecht:
    AOL E-Mail Adressen blockieren
    Antwort #11 am: 14. April 2011, 10:10:13
    Guter Ansatz, funktioniert aber nicht ganz.
    Wenn ich den oberen Part einbaue, kommt aber die Fehlermeldung:
    Zitat
    Ihre eingegebene E-Mail-Adresse ist fehlerhaft - bitte überprüfen Sie diese.
    Weil der Code mit folgender Ausgabe zusammen hängt.

    Code: PHP  [Auswählen]
    } elseif (xtc_validate_email($email_address) == false) {
        $error = true;
        $messageStack->add('create_account', ENTRY_EMAIL_ADDRESS_CHECK_ERROR);
    Würde in dem fall Funktionieren, wenn man die eMail Addy auf Rechtschreibfehler Prüfen will.

    Ich bräuchte aber eine Lösung wo dann die Meldung erscheint: "Dieser eMail Anbieter ist Gesperrt, bitte benutzen sie einen anderen"...

    Um eine extra Ausgabe zu bekommen, müsste ich in die xtc_validate_email.inc.php ne extra abfrage einbauen...

    //Edit: Also bin grad etwas am rumprobieren, aber hab noch net die Lösung gefunden.
    Hab jetzt folgendes mal direkt in die create_account.php gemacht:

    Code: PHP  [Auswählen]
    $fehler_domain = array('0815.ru','trash-mail.com');
    und folgende abfrage:

    Code: PHP  [Auswählen]
    } elseif (in_array($email_address, $fehler_domain)) {
        $error = true;
        $messageStack->add('create_account', 'Bitte verwenden Sie eine andere eMail Adresse');
    normal müsste er mir da jetzt checken ob eine von den fehlerdomains in der email addy vorkommt...aber irgendwie macht ers bei mir net ^^

    Hab auch mal meinen Freund google dazu befragt und dabei kamm z.b. folgende Seite raus: http://stackoverflow.com/questions/5136678/php-validate-email-address-based-on-the-domain-name

    Wenn ich mir das anschaue müsste aber meine Abfrage funktionieren...

    //Edit: Also egal was ich Probiere er machts einfach net. Entweder führt er den Array nicht aus oder er hat ein Problem mit der eMail bzw. Blacklsit Abfrage...ich weis es einfach net :-(

    Spegeli

    • Schreiberling
    • Beiträge: 278
    • Geschlecht:
    AOL E-Mail Adressen blockieren
    Antwort #12 am: 14. April 2011, 11:34:44
    So nun habe ich es endlich zum laufen bekommen.
    Gelöst habe ich das Problem nun mit "preg_match":

    Code: PHP  [Auswählen]
    //BOF - Hetfield - 2009-08-15 - confirm e-mail at registration
    if (strlen($email_address) <ENTRY_EMAIL_ADDRESS_MIN_LENGTH) {
        $error = true;
        $messageStack->add('create_account', ENTRY_EMAIL_ADDRESS_ERROR);
    } elseif (xtc_validate_email($email_address) == false) {
        $error = true;
        $messageStack->add('create_account', ENTRY_EMAIL_ADDRESS_CHECK_ERROR);
    } elseif ($email_address != $confirm_email_address) {
        $error = true;
        $messageStack->add('create_account', ENTRY_EMAIL_ERROR_NOT_MATCHING);
    } elseif (preg_match("/0815.ru|trah-mail.com/", $email_address)) {
        $error = true;
        $messageStack->add('create_account', 'Bitte verwenden Sie eine andere eMail Adresse');
    ...
     
    In diesem Beispiel hier sind die Domains 0815.ru und trash-mail.com gesperrt.
    Ist vielleicht nicht gerade die beste/schönste Lösung aber sie erfüllt ihren Zweck. ^^

    Sollte ich mal Zeit dafür finden werde ich das ganze mit 'ner DB verbinden, so dass man die BlackList Domains per Backend einfügen kann. ^^

    Spegeli

    • Schreiberling
    • Beiträge: 278
    • Geschlecht:
    AOL E-Mail Adressen blockieren
    Antwort #13 am: 14. April 2011, 20:53:32
    Also das Backend ist fertig:

    [ Für Gäste sind keine Dateianhänge sichtbar ]

    Ich hab einfach die "blacklist.php" genommen welche normal für das Sperren von Kreditkarten ist und habe es umgeschrieben.

    Das einzige Problem das ich jetzt noch habe ist das Abfrage von der Datenbank.
    Ich muss es jetzt irgendwie schaffen das er mir die ganzen Domains abfragt und dann so zusammen setzt

    Code: PHP  [Auswählen]
    0815.ru|trah-mail.com|willhackforfood.biz|yopmail.com
     
    und den gesamten string an die Variable $edb übergibt welche dann in der preg_match Abfrage eingebaut wird.

    Code: PHP  [Auswählen]
    } elseif (preg_match("/'.$ebd.'/", $email_address)) {
    Vielleicht weiss ja jemand wie man die DB abfragt und dann in einen zussamenhängenen string macht, ^^ dann spare ich mir wieder 5 Stunden googlen. ^^

    EDIT: Bin soeben auf den Befehl "GROUP_CONACT" gestoßen der das wohl machen soll... jetzt müsste ich das nur noch in einer richtigen Abfrage drin haben.

    So hab ich momentan den Code:

    Code: PHP  [Auswählen]
    $test12 = xtc_db_query("select *, GROUP_CONCAT(blacklist_domain_name SEPARATOR '|' ) FROM " . TABLE_EMAIL_BLACKLIST . " ");

    echo $test12;
     
    Alles was er mir aber ausspuckt ist die Meldung "Resource id #226"...aahh ich verzweifel gleich. ^^

    KJoe

    • Fördermitglied
    • Beiträge: 66
    Re: AOL E-Mail Adressen blockieren
    Antwort #14 am: 03. August 2014, 14:04:57
    Hallo allerseits,

    in xtc_validate_email.inc.php
    suchen...

    kann mir jemand weiterhelfen, wie das bei der aktuellsten Version aussehen muss?
    Denn wür würden darin gern sämtliche Freemaildomains ohne Anmeldung (aktuell etwa 500 Seiten) aussperren wollen.

    Grund sind Nachnahmebestellungen, die der Empfänger nicht gemacht hat, bei der die Mail-Domain aber nicht gleich als "Freemail ohne Hardwarkonto" erkannt wurde. Da hat man leider nichts weiter in der Hand, ausser den entstandenen Kosten.

    Die Liste der aktuellen Anbieter versuche ich als txt-Datei hier ran zu hängen.

    Als administrierbares Modul fürs Admincenter wäre es natürlich die Luxuslösung, jedoch reicht uns natürlich auch ein Hinweis zur korrekten Um- bzw. Einsetzung im Quellcode der letzten Modified-Version.

    Vielen Dank im Voraus
    Friedel
    18 Antworten
    14234 Aufrufe
    31. Dezember 2015, 18:07:26 von p3e
    27 Antworten
    12788 Aufrufe
    17. März 2016, 10:01:21 von FS72
    3 Antworten
    3051 Aufrufe
    13. Januar 2010, 08:32:49 von mantis
    3 Antworten
    3250 Aufrufe
    25. April 2010, 00:28:38 von supernova
               
    anything