Matthias: IP sperre nach 3 mal suchen

Wie kann ich eine IP Sperre so anlegen, dass der User 3 mal suchen darf, dann erst wieder nach 24 Stunden oder wenn er eine neue IP hat. Wenn ich die IP´s in einer DB speichere habe ich das Problem, das dann andere User, die dann die IP bekommen haben nicht mehr suchen können.

Kann ich die DB Inhalte automatisch nach 24 Stunden von einem Script leeren lassen ?

Maze

  1. Hello,

    Wie lautet denn die persönliche IP des Users?

    Grüße

    Tom

    1. Wie lautet denn die persönliche IP des Users?

      Nein nein, das soll für alle User gelten, der User kommt auf die Seite, darf 3 mal suchen und dann soll mindestens für die nächsten 24 Stunden schluss sein.

      1. moin!

        ich würde das in einer datenbank loggen. mit den spalten ip, zugriffe und lastaction.

        ip ist selbstklärend.
        zugriffe, zählst du einfach die anzahl der zugriffe + 1.
        lastaction schreibst du die zeit des letzten zugriffs ein.

        beim nächsten aufruf der ip überprüfst du einfach, wie lang die letzte aktion zurückliegt.

        gruß.
        roger.

        --
        Dein eigenes Newslettersystem auf deiner Homepage: http://newsletter.maennchen1.de
        1. Ist ne gute Idee, kann ich machen.

          beim nächsten aufruf der ip überprüfst du einfach, wie lang die letzte aktion zurückliegt.

          weiss nicht wirklich wie ich checken kann, das der letzte Zugriff z.B. 24 Stunden her ist. Kannst du mir das genauer erklären.

          Merci Maze

          1. moin!

            na indem du nach dem ersten zugriff die zeit in die spalte lastaction schreibst. bei den folgenden zugriffen überprüfst du dann einfach die zeitspanne des letzten und des gerade erfolgten.

            gruß.
            roger.

            --
            Dein eigenes Newslettersystem auf deiner Homepage: http://newsletter.maennchen1.de
        2. Dann hast du es doch. im normalfall dürfte deine hp nicht so stark frequentiert sein, dass zwei user die gleiche ip innerhalb von 24 stunden haben. erstens gibt es eh eine mindestdauer bevor eine ip neu vergeben werden darf und zweitens hat doch fast jeder dsl, so dass er eh für 24 stunden ein eip blockiert.

          ansonsten musst du es mal mit cookies probieren. du erstellst einfach ein cookie und speicherst dadrin die letzte aktion und die zahl der suchen ab. wenn die anzahl = 3 ist, setzt du lastaction auf die gegenwärtige urzeit und die anzahl wieder auf 0. wenn nun eine anfrage kommt, dann überprüfst du die anzahl, wenn die gleich null ist, dann überprüfst du eben lastaction und gibst das jeweilige aus. wenn kein cookie vorhanden ist, dannn ist eh klar => eins erstellen

          1. Hello,

            Dann hast du es doch. im normalfall dürfte deine hp nicht so stark frequentiert sein, dass zwei user die gleiche ip innerhalb von 24 stunden haben. erstens gibt es eh eine mindestdauer bevor eine ip neu vergeben werden darf und zweitens hat doch fast jeder dsl, so dass er eh für 24 stunden ein eip blockiert.

            Genau, und DSL-Router haben die meisten dann auch. Dahinter sitzen zwei bis 10 PCs oder so ähnlich.

            Da darf dann nur noch einer von denen zugreifen, oder?

            AOL-IPs werden z.B. im Turnus im Zugriffstakt (also pro Request) dynamisch vergeben. Da hat ein Surfer dann pro Seitenbesuch durchaus 15 verschiedene IPs (wenn 14 Folgerequests in der Seite stehen, als da wären: Bilder, CSS-Dateien, JS-Dateien, Frames, iFrames, etc).
            Aber AOL ist ja unbedeutend *???*

            Grüße

            Tom

          2. Abend!

            ansonsten musst du es mal mit cookies probieren.

            Würd ich nicht machen. Denn jeder erfahrene Surfer denkt ja bei sowas gleich an Cookies und löscht diese dann alle.

            Gruß,
            Lukas

      2. Hello,

        Wie lautet denn die persönliche IP des Users?

        Nein nein, das soll für alle User gelten, der User kommt auf die Seite, darf 3 mal suchen und dann soll mindestens für die nächsten 24 Stunden schluss sein.

        Ach so. Die Seite soll insgesamt nur dreimal angezeigt werden. Na, dann zähl doch einfach die Zugriffe:

        <?php
        $fh = @fopen("filemeta.dat","r+");
        if (!$fh)
        {
          $c=1;
          $fh = @fopen("filemeta.dat","w");
          @fwrite($fh, $c);
          @fclose($fh);
        }
        else
        {
          $c=fread($fh,8);
          $c++;
          @fwrite($fh, $c);
          @fclose($fh);
        }

        if ($c > 3) die ("Aufruf nicht mehr möglich");

        }

        ?>

        Das Rücksetzen musst Du dann mal selber reinbauen...

        Grüße

        Tom

  2. Hallo,

    Ich glaube leider, so ne Sperre bringt kaum was, da viele Inetuser DHCP verwenden. DHCP bewirkt nämlich, dass man bei jedem Neueinwählen ins Netz ne neue, gerade freie IP bekommt. *schnief*

  3. Moin!

    Wie kann ich eine IP Sperre so anlegen, dass der User 3 mal suchen darf, dann erst wieder nach 24 Stunden oder wenn er eine neue IP hat. Wenn ich die IP´s in einer DB speichere habe ich das Problem, das dann andere User, die dann die IP bekommen haben nicht mehr suchen können.

    Dein Problem ist, auch wenn es anders formuliert ist, absolut identisch mit http://www.dclp-faq.de/q/q-scripte-abstimmung.html: "Wie kann ich schummelsichere Abstimmungen codieren?"

    Das Problem ist: Wie erkennst du den einzelnen Menschen wieder, der dein Skript benutzt?

    Antwort: Ohne Anmeldung und Login-Vorgang gar nicht. Und folglich kannst du din Vorhaben vergessen.

    Antwort: Mit Login kannst du die Zahl der Aufrufe in den Benutzerdaten loggen und ggf. weitere Suchen verweigern. Aber wer wird sich schon anmelden? Oder wie wird man daran gehindert, sich mehrfach anzumelden? Ohne riesigen Aufwand kannst du das also auch nicht wirklich sicher hinkriegen - wobei der Aufwand entweder bei dir liegt (manueller Datenabgleich und manuelles Freischalten von Neuanmeldungen - dann fallen dir Massenanmeldungen aus demselben IP-Bereich vielleicht auf und werden näher untersucht), oder bei der Indentifikation der teilnehmenden Personen (das PostIdent-Verfahren wäre da noch das harmloseste einigermaßen wirksame).

    - Sven Rautenberg

    --
    "Beim Stuff für's Web gibts kein Material, was sonst das Zeugs ist, aus dem die Sachen sind."
    (fastix®, 13. Oktober 2003, 02:26 Uhr -> </archiv/2003/10/60137/#m338340>)