ilch Forum » Allgemein » HTML, PHP, SQL,... » Google reCaptcha auf Topliste einbinden

Geschlossen
  1. #1
    User Pic
    Galle81 gelöschter User
    Guten Abend,

    da sich auf meiner Topliste mittlerweile immer mehr Spamer anmelden (ca. 100-200 pro Tag) und ich habe auch schon mehrere Maßnahmen dagegen unternommen, wie z.B. das Scrip von Bot-Trap.de.

    Ja, ich weiß auch, dass es hier hauptsächlich um ilch geht.
    Trotzdem bin ich mit meinem Latein am Ende, was das einbinden des "Google reCaptcha's" angeht und bitte hier um Hilfestellung. lächeln

    Angemeldet und die Codes hatte ich bereits eingebunden, jedoch müsste dies noch irgendwie in die join.php eingebunden werden.

    Hier wäre der Code, der in den <head> Bereich kommt:


    Dieser soll in das Formular:
    1
    <div class="g-recaptcha" data-sitekey="6LdGSA8TAAAAAFdElhOfhkIX73ZV3NPQQ4izfZNp"></div>


    Hier wäre meine join.php:



    Und hier meine join_form.html:


    Falls ihr noch etwas braucht, sagt einfach bescheid. lächeln

    LG, Galle

    betroffene Homepage: toplist.fsc-clan.org/index.php?a=join
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    Saarlonz Hall Of Fame
    Registriert seit
    07.08.2008
    Beiträge
    3.003
    Beitragswertungen
    235 Beitragspunkte
    1 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    Galle81 gelöschter User
    Danke Saarlonz, werde ich mir heute Nachmittag mal etwas genauer anschauen, auch wenn mein englisch nicht ganz so gut ist. lächeln

    LG, Galle
    0 Mitglieder finden den Beitrag gut.
  4. #4
    User Pic
    MOODFOR Mitglied
    Registriert seit
    25.06.2014
    Beiträge
    177
    Beitragswertungen
    2 Beitragspunkte
    Ich benutzte eine ziemlich große htaccess Blacklist, das funktioniert auch super seitdem haben ich nur alle paar Monate einen Eintrag lächeln

    externer Link

    Ganz wichtig ist, dass du "Semalt" blockierst , das Netzwerk generiert den meisten Spam ....


    1
    2
    3
    4
    # block visitors referred from semalt.com
    RewriteEngine on
    RewriteCond %{HTTP_REFERER} semalt\.com [NC]
    RewriteRule (.*) http://www.semalt.com [R=403,L]
    The government pretend,
    they your friend. And then when you steal some shit,they put you in jail
    0 Mitglieder finden den Beitrag gut.
  5. #5
    User Pic
    Galle81 gelöschter User
    Ich ich habe bis jetzt schon ca. 1000 Ip's gesperrt (exakt oder global), trotzdem bringt es nur kurz ruhe. traurig

    So, ich habe jetzt mal diese beiden Dinge in meine join_form.html ein gebunden und es wird auch angezeigt, jedoch ist noch keine Funktion enthalten.
    1
    2
    3
     
    <div class="g-recaptcha" data-sitekey="6LdGSA8TAAAAAFdElhOfhkIX73ZV3NPQQ4izfZNp"></div>


    Jetzt verlässt mich schon Wissen, wie ich weiter verfahren soll.
    Wo müsste z.B. bei Step 2 dieser Code eingebunden werden?

    1
    2
    3
    4
    5
    <? php
      foreach  ($ _POST  als  $ key  => $ value) {
        echo  "<p> <strong>  '. $ key.": </ strong>'. $ value. "</ p>";
      }
    ?>
    0 Mitglieder finden den Beitrag gut.
  6. #6
    User Pic
    Saarlonz Hall Of Fame
    Registriert seit
    07.08.2008
    Beiträge
    3.003
    Beitragswertungen
    235 Beitragspunkte
    Hast du den die lib eingebunden? Du musst nach dem absenden des Formulars erst prüfen ob das captcha richtig war, das tust du mittels if. Wenn richtig wird wie gewohnt der Rest der php ausgeführt.
    1 Mitglieder finden den Beitrag gut.
  7. #7
    User Pic
    Galle81 gelöschter User
    Ich habe bis jetzt nur die beiden Codes in die join_form.html eingebunden und die recaptchalib.php auf den FTP hoch geladen.
    Dann hört es leider auch schon auf.

    So sieht die recaptchalib.php im Moment bei mir aus:


    LG, Galle
    0 Mitglieder finden den Beitrag gut.
  8. #8
    User Pic
    Saarlonz Hall Of Fame
    Registriert seit
    07.08.2008
    Beiträge
    3.003
    Beitragswertungen
    235 Beitragspunkte
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    // hier wird die lib eingebunden
    require_once('link/zur/lib/recaptchalib.php');
    // hier muss der 2 (Geheime) Google Schlüssel eingetragen werden
    $secret = "GOOGLE_KEY_SECRET";
    $response = null;
    $reCaptcha = new ReCaptcha($secret);
    if ($_POST["g-recaptcha-response"]) {
        $response = $reCaptcha->verifyResponse(
                $_SERVER["REMOTE_ADDR"], $_POST["g-recaptcha-response"]
        );
    }
    // ab hier prüfung ob captcha gültig
    if ($response != null && $response->success) {
        echo 'captcha ok';
    } else {
        echo 'captcha nicht ok';
    }




    Zuletzt modifiziert von Saarlonz am 18.11.2015 - 17:37:34
    0 Mitglieder finden den Beitrag gut.
  9. #9
    User Pic
    Galle81 gelöschter User
    Wo müsste ich denn den Code eintragen in die join.php?

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    // hier wird die lib eingebunden
    require_once('sources/recaptchalib.php');
    // hier muss der 2 (Geheime) Google Schlüssel eingetragen werden
    $secret = "6LdXXX";
    $response = null;
    $reCaptcha = new ReCaptcha($secret);
    if ($_POST["g-recaptcha-response"]) {
        $response = $reCaptcha->verifyResponse(
                $_SERVER["REMOTE_ADDR"], $_POST["g-recaptcha-response"]
        );
    }
    // ab hier prüfung ob captcha gültig
    if ($response != null && $response->success) {
        echo 'captcha ok';
    } else {
        echo 'captcha nicht ok';
    }
    0 Mitglieder finden den Beitrag gut.
  10. #10
    User Pic
    Saarlonz Hall Of Fame
    Registriert seit
    07.08.2008
    Beiträge
    3.003
    Beitragswertungen
    235 Beitragspunkte
    Du kannst es mal zu Testzwecken am Anfang der php einfügen. Wenn alles so funktioniert wie es soll, würde ich den db insert in die if Bedingung einfügen. So wird der insert nur ausgeführt wenn das captcha ok ist.
    0 Mitglieder finden den Beitrag gut.
  11. #11
    User Pic
    Galle81 gelöschter User
    Denn erscheint folgender Fehler:
    1
    Fatal error: Class 'ReCaptcha' not found in /var/www/web711/html/toplist/sources/join.php on line 24





    Zuletzt modifiziert von Galle81 am 19.11.2015 - 07:07:00
    0 Mitglieder finden den Beitrag gut.
  12. #12
    User Pic
    Saarlonz Hall Of Fame
    Registriert seit
    07.08.2008
    Beiträge
    3.003
    Beitragswertungen
    235 Beitragspunkte
    Hast du den richtigen Pfad zur recaptchalib.php angegeben?
    1 Mitglieder finden den Beitrag gut.
  13. #13
    User Pic
    Galle81 gelöschter User
    Guten morgen,

    der Pfad sollte jetzt stimmen.
    Allerdings steht jetzt ganz oben "captcha nicht ok" und die styles stimmen irgendwie nicht mehr.

    Zudem kommt wenn ich eine Seite eintragen habe folgender Fehler:
    1
    Warning: Cannot modify header information - headers already sent by (output started at /var/www/web711/html/toplist/sources/join.php:34) in /var/www/web711/html/toplist/sources/misc/session.php on line 56


    PS: Der Pfad wurde oben in der join.php angepasst.

    LG, Galle


    Zuletzt modifiziert von Galle81 am 19.11.2015 - 07:08:06
    0 Mitglieder finden den Beitrag gut.
  14. #14
    User Pic
    Galle81 gelöschter User
    Das Thema hat sich dank Saarlonz soweit erledigt. lächeln

    Vielen Dank nochmal und ein schönes Wochenende gewünscht.

    LG, Galle
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu HTML, PHP, SQL,...

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten