1. Herzlich willkommen bei WPDE.org, dem grössten und ältesten deutschsprachigen Community-Forum rund um das Thema WordPress. Du musst angemeldet oder registriert sein, um Beiträge verfassen zu können.
    Information ausblenden

Doppelte Anmeldung durch Email Abgleich mit Datenbank verhindern

Dieses Thema im Forum "Plugins und Widgets" wurde erstellt von SebCe, 30. September 2020.

  1. SebCe

    SebCe New Member

    Registriert seit:
    30. September 2020
    Beiträge:
    3
    Zustimmungen:
    0
    Hallo Zusammen,

    ich nutze für ein Registrierungsformular für eine Veranstaltung das WP Contact Form 7 PlugIn mit Contact Form Entries zur Speicherung in einer Datenbank. Ich möchte gerne Doppelanmeldungen verhindern, indem ich die im Formular eingetragene Email mit der Datenbank abgleiche und ein Hinweis ausgegeben wird, wenn die Email bereits in der Datenbank vorhanden ist.

    Habe dazu bis jetzt folgenden Code gefunden:


    add_filter( 'wpcf7_validate', 'email_already_in_db', 10, 2 );

    function email_already_in_db ( $result, $tags ) {
    // retrieve the posted email
    $form = WPCF7_Submission::get_instance();
    $email = $form->get_posted_data('your-email');
    // if already in database, invalidate
    if( email_exists( $email ) ) // email_exists is a WP function
    $result->invalidate('your-email', 'You have already registered with this email!');
    // return the filtered value
    return $result;
    }


    Das scheint auch soweit zu funktionieren, allerdings nur bei meiner eigenen Email-Adresse, die anscheinend noch anderweitig auf der Seite vertreten ist (Hinweistext trotz Löschen meiner Email Adresse aus der Datenbank). Bei anderen Email-Adressen die noch in der Datenbank stehen, funtioniert das nicht. (Kein Hinweis trotz Eintrag der Email Adresse in der Datenbank).

    Kann mir da jemand weiterhelfen?!

    Vielen Dank.
     
  2. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.636
    Zustimmungen:
    1.778
    Die WordPress Funktion email_exists() sucht nur in der Benutzerdatenbank von WordPress.

    Dein Code müsste in den anderswo gespeicherten Daten des Contact Form Entries Plugins schauen, ob/wie man das machen kann, weiss vermutlich am besten der Plugin Support.
     
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden