COunter



  • Hallo!
    Wie kann man einen Counter implementieren?
    Programmiersprache ist egal.

    mfg CSS



  • Ich geh mal davon aus, dass du es selber machen willst und nicht einen fremden Counter-Service benützen willst.

    Das ganze funktioniert über eine serverseitige Scriptsprache (nimm dafür am besten PHP) und baus in deine Homepage ein. Möglichkeit 1 du speicherst den aktuellen Counterstand in eine Datei und liest die Datei bei jedem Aufruf der Page aus erhöhst den Inhalt (eine Zahl) um eins gibst diese aus und speicherst den neuen Wert wieder in die Datei.

    Wenn du eine Datenbank zur Verfügung hast würde ich den Counterstand in eine Datenbank schreiben und von dort auslesen.

    Das ist im Prinzip immer gleich, kümmern musst du dich dann nur noch um die "Features":
    - Grafische Aufbereitung der Anzeige des Counters
    - Wie behandelst du mehrmaliges Besuchen deiner Page? Was wenn der User direkt auf eine Unterseite geht? Zählst du Pagehits oder Visits? etc. Da muss man sehr viel prüfen um einen repräsentativen Wert zu erhalten...

    MfG SideWinder



  • <?php
    function count($picdir="")
    {
      list($counter,$ip)=split('[|]',implode("",file("counter.txt")));
      if($ip!=$REMOTE_ADDR && !isset($_COOKIE["COUNTER"]))
      {
        ++$counter;
        $h=fopen("counter.txt","w");
        fwrite($h,$counter."|".$REMOTE_ADDR);
        fclose($h);
      }
      else if(isset($_COOKIE["COUNTER"]))
        $counter=$_COOKIE["COUNTER"];
      setcookie("COUNTER",$counter,time()+60*60*24*30,"/","www.domain.de");
      if($picdir!="")
        for($i=0;$i<strlen($counter);++$i)
          echo "<img src=\"./".$picdir."/".$counter.".jpg\" />";
      else
        echo $counter;
    }
    ?>
    

    $picdir: Verzeichnis relativ zum Script oder direkt eine URL angeben. Es müssen Bilder mit der Bezeichnung 0 bis 9... mit der Endung jpg vorhanden sein. Du kannst auch den Script umschreiben, sodass GIF-Dateien genommen werden, wie du das wünschst.

    Vorgehensweise des Counters:

    - count.txt einlesen
    - Counterstand und IP des letzten Besuchers sind mit einem "|" getrennt
    - Wenn IP des Besuchers != IP des Counters, und der Cookie "COUNTER" nicht existiert, dann aufzählen
    - In Datei reinschreiben
    - Cookie speichern (30 Tage)
    - Wenn $picdir != "" (leer), dann Bilder anzeigen, ansonsten nur den Counterstand als Zahl.

    Wenn jemand Cookies nicht gestattet, kann es passieren, dass bei ihm mehrmals aufgezählt wird, wenn er z.B. F5 drückt, also die Seite aktualisiert. Besitzt er den Cookie, so passiert das nicht.

    Achja, als Domain (Bei setcookie, letzter Parameter) musst du natürlich deine Domain angeben, in der das Script liegt.

    - Windoof



  • Danke!

    mfg CSS


Anmelden zum Antworten