• Also hier ist das Validierungs script:

    Und hier ist das Mailformular auf der Seite:

    Ich finde es halt irritierend, das ich scheinbar der einzige osC-Benutzer bin, der das Problemchen hat und das noch nie jemand anderer maildomains ausschließen wollte und es nicht auf meine Art geschafft hat.
    Dieses hotmail, live, outlook-Problem habe ja nicht nur ich alleine^^
    Ich habe auch die infragekommenden Dateien, die beim Versand von mails mitspielen alle mit den Originaldateien verglichen und die waren bis auf mein selbst eingebautes Checkfield zum Datenschutz identisch.
    Das Checkfiels und das dazugehörige JS hab ich auch schon testweise wieder gelöscht - hat aber auch nichts bewirkt.

    Wer zuerst "Datenschutz" sagt, hat verloren.

  • Ah, ok. Ich denke mal, Dein Script nutzt die regex gar nicht, denn es gibt oben drüber drei Wahlmöglichkeiten. Eigentlich bin ich mir da sogar sehr sicher.

    if ( strlen($email) > 255 )
    elseif ( function_exists('filter_var') && defined('FILTER_VALIDATE_EMAIL') )
    else

    das "if ( strlen($email) > 255 )" würde false liefern, wenn die Adresse zu lang ist. Die Regex steckt im Bereich von "Else". Das Problem ist das elseif dazwischen, denn "filter_var" wird es wohl geben. Also liefert die PHP-Funktion "filter_var" true oder false beim Check. Und die Prüfung ist eben nur, ob die Syntax korrekt ist, nicht ob da Hotmail oder sonst was drinnen vorkommt.

    Du müsstest, so als Schnelllösung, eigentlich also die Regex samt deren if/else zusätzlich nach dem "$valid_address = (bool)filter_var($email, FILTER_VALIDATE_EMAIL);" reinpacken. Dann sagt die PHP-Funktion zwar erst mal TRUE, Email-Syntax gültig, die dann folgende Regex aber false, weil eben besagte Wörter vorkommen.

    Wenn ein Mensch nicht um dich kämpft, hat er nur gewartet, dass du gehst. ;(

  • Alternativ könntest Du auch nach dem "$valid_address = (bool)filter_var($email, FILTER_VALIDATE_EMAIL);" einfach eine Prüfung machen. Syntax ist ja schon getestet. Könnteste also einfach hergehen und, wenn bis dazu TRUE, einfach mit strpos arbeiten und testen, ob @hotmail. oder @live. oder @outlook. in der $email vorkommen. Wenn ja, dann $valid_address manuell auf false setzen.

    Wenn ein Mensch nicht um dich kämpft, hat er nur gewartet, dass du gehst. ;(

  • Das Bier hats gebracht. Möglicherweise auch Deine bescheidene Hilfe :)

    Mit dem hier gehts:

    ICh hab das RegExp einfach nach dem elseif ( function_exists('filter_var') && defined('FILTER_VALIDATE_EMAIL') reingefrickelt. Geht^^

    Wer zuerst "Datenschutz" sagt, hat verloren.

  • Aso. Ich hab das noch ein bischen verfeinert, denn jetzt kommen keine eMailadressen mehr durch die irgendwo die Strings "outlook", "live" oder "hotmail" enthalten.
    Auch mailadressen wie @perfectlive oder @liveisshit werden blockiert.
    Deshalb habe ich das jetzt als exakt match gemacht: (?!hotmail$|live$|outlook$)

    Wer zuerst "Datenschutz" sagt, hat verloren.

  • Falls jemand Magento 2 benutzt:

    /lib/web/mage/validation.js

    Zeile 492

    Code
    "validate-email": [
                function (v) {
                    return $.mage.isEmptyNoTrim(v) || /^([a-z0-9,!\#\$%&'\*\+\/=\?\^_`\{\|\}~-]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z0-9,!\#\$%&'\*\+\/=\?\^_`\{\|\}~-]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*@([a-z0-9-]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z0-9-]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*\.(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]){2,})$/i.test(v);
                },
                'Please enter a valid email address (Ex: johndoe@domain.com).'
            ],

    ändern zu

    Code
    "validate-email": [
                function (v) {
                    return $.mage.isEmptyNoTrim(v) || /^([a-z0-9,!\#\$%&'\*\+\/=\?\^_`\{\|\}~-]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z0-9,!\#\$%&'\*\+\/=\?\^_`\{\|\}~-]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*@(?!hotmail$|live$|outlook$)([a-z0-9-]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z0-9-]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*\.(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]){2,})$/i.test(v);
                },
                'Hier der Erklärbärtext, wieso die 3 Maildomains nicht erwünscht sind.'
            ],

    Wer zuerst "Datenschutz" sagt, hat verloren.

  • Ja, das mit dem Filter ist die elegantere Methode ;)

    Aber, wurde @perfectlive wirklich gesperrt? @liveisshit ja, da hätten Nachbesserungen kommen müssen, aber @perfectlive dürfte eigentlich nicht gesperrt werden, weil die Regex direkt nach dem @ die Zeichenkette sucht, also ohne was anderes dazwischen.

    Wenn ein Mensch nicht um dich kämpft, hat er nur gewartet, dass du gehst. ;(

  • Mist. Stimmt. Das geht nur, wenn es direkt nach dem @ steht. *grr
    Ich hab das so gemacht, weil ich einige Kunden habe, deren Domains mit "live" beginnen - und wenn vor dem "live" was steht, dann ist das für mich ja auch OK.

    Wer zuerst "Datenschutz" sagt, hat verloren.

  • könnte gerade auch kotzen. Seit gestern kommen hier auch alle Mails zurück, und das, obwohl ich über gmx sende

    Zitat


    bab8f9518396499470a90f426e37f5.pamx1.hotmail.com[104.47.33.33] said: 550 5.7.1 Unfortunately, messages from [xxx.xxx.xxx.xxx] weren't sent. Please contact your Internet service provider since part of their network is on our block list (AS3140). You can also refer your provider to https://beispiel.rocks/beispiel.rocks…ing.aspx#errors. [BN3NAM01FT011.eop-nam01.prod.protection.outlook.com] (in reply to MAIL FROM command)

    Ist Geil ^^^^, wenn ne 287 EUR Rechnung nicht zugestellt werden kann ^^^^

    Wenn ein Mensch nicht um dich kämpft, hat er nur gewartet, dass du gehst. ;(

  • tjoar, das ist halt MS
    Da habe ich schon lange aufgegeben. Aber das selbst GMX in der "Blacklist" steht, finde ich beachtlich.

    Problem ist halt auch immer das die was ändern dran, das ist einfach zuviel aufwand für 0,0001 % der mails.

    wenn etwas möglich erscheint mach ich das, wenn das nicht klappt gehts ans unmögliche und ansonsten das undenkbare.

    - nun stolz rauchfrei - Ich denke also Bing ich!

    Support 24h Bereitschaft 0173 6107465 - NUR Für Kunden von SEO NW!