Gerd H.: Klicks zählen mit zeitsperre

Hallo,

ich habe folgendes vor und zerbreche mir schon die ganze Zeit den Kopf wie ich das lösen soll:

Es sollen Klicks auf bestimmte Links gezählt werden. Per GET wird eine ID übermittelt. Klicks innerhalb von 20 Sekunden werden nicht gezählt.

Speicherung der Klicks soll in einer DB erfolgen

Die Überprüfung ob für die ID ein Klick innerhalb von 20 Sekunden erfolgt ist in der Session.

Mein Ansatz wäre das in Arrays zu machen...

Für Hilfe wäre ich sehr dankbar.

Gerd

  1. oder du erledigst das mithilfe von JS und ersparst dir halbe mühe.
    MFG
    bleicher

    --
    __________________________-
    Menschen an sich , sind nicht schlecht - es sind nur ihre Taten (c).
    1. oder du erledigst das mithilfe von JS und ersparst dir halbe mühe.
      MFG
      bleicher

      Wie meinst du das?

      Ich versuch mal zu erklären was ich genau möchte:

      Ich möchte Banner platzieren von unterschiedlichen Internetpräsenzen. Klicks auf die Banner gehen auf eine click.php?id=<banner_id>

      So jetzt wird auf der click.php geschaut ob auf den und genau den Banner innerhalb von 20 Sekunden geklickt wurde.

      .. und nach den Prüfungen wird auf die Domain weitergeleitet.

      Wenn der Besucher auf der Seite weiterhin navigiert, dann soll er auf einen anderen Banner innerhab der Zeit klicken können und dass dann auch das Update in der DB gemacht wird.

      1. also es geht um GLOBALE 20 secunden? ich habe es so verstanden dass EIN user die 20 secundensperre aht.
        na speichere einfach nur zusätzlich timstamp n secunden - und beim erhalt des neuen subtrahiere die werte.
        MFG
        bleicher

        --
        __________________________-
        Menschen an sich , sind nicht schlecht - es sind nur ihre Taten (c).
        1. also es geht um GLOBALE 20 secunden? ich habe es so verstanden dass EIN user die 20 secundensperre aht.
          na speichere einfach nur zusätzlich timstamp n secunden - und beim erhalt des neuen subtrahiere die werte.
          MFG
          bleicher

          Du verstehst dabei das Problem nicht bzw. was ich meine.

          Die Zeitsperre alleine ist echt kein Problem.
          Also es sind mehrere Banner auf der Seite.

          Beim Kick auf Bannerid1 hat der User eine Zeitsperre von 20 Sekunden, wo  er auf den selben Banner erneut klicken kann und kein Update in der DB durch geführt wird. Sollte er aber innerhalb der 20 Sekunden auf Bannerid2 klicken, wird trotzdem für den Bannerid2 ein Update in der DB gemacht.

          Das ganze lässt sich bestimmt in einem Sessionarray realisieren, aber ich finde die Lösung einfach nicht.

  2. Also ich habe folgendes ausgearbeitet, vielleicht hilft es ja jemandem:

      
      
    if(!isset($_SESSION['banner_id'])) $_SESSION['banner_id'] = array();  
    if(!in_array($_GET['banner_id'],$_SESSION['banner_klick'])) {  
        //update  
        $_SESSION['banner_klick'][] = $_GET['banner_id'];  
    }  
      
    
    

    Damit könnte man überprüfen, ob der Banner innerhalb der Session schon mal aufgerufen wurde. Jetzt nur noch irgendwie die Zeitsperre da rein?!?

    1. Ich grüsse den Cosmos,

      Jetzt nur noch irgendwie die Zeitsperre da rein?!?

      Speicher doch die Timestamp mit im Cookie und prüf, ob der letze Aufruf schno 10 Minuten her ist.

      Möge das "Self" mit euch sein

      --
      Neulich dachte ich mir, einmal S/M ausprobieren wäre eine tolle Erfahrung. Also hab ich Windows gebootet ...