Besucherzähler

Dieses Thema im Forum "Web-Know-how für die Homepage" wurde erstellt von Obertroll, 30. September 2017.

Tags:
  1. Obertroll

    Obertroll Byte

    Hallo,
    ich habe mir einen Besucherzähler gebastelt. Aber irgendwo ist da der Hund drin begraben. Im Vergleich zu Google Analytics bekomme ich Werte die ca. 3-4 mal so hoch sind.
    Würde mich freuen, wenn mir hier jemand weiter helfen könnte, wo mein logik-fehler ist.
    Hier der Quelltext:

    include("cgi-bin/zugriff.inc.php"); // Auslesen der gespeicherten Werte
    $sql = "select * from gaestezaehler";
    $result = mysql_query ($sql);
    while ($row =mysql_fetch_assoc($result)){
    $gastip = "$row[gastip]";
    $zeitpunkt = "$row[zeitpunkt]";
    $heute = "$row[heute]";
    $gestern = "$row[gestern]";
    $gesamt = "$row[gesamt]";
    }
    $timestamp = time();
    $jetztwert = ($timestamp/86400); // Umrechnung von Sekunden in Tage (heute)
    $jetztdat = floor($jetztwert); // Datum als Zahlenwert ohne Nachkommastellen (heute)
    $letztwert = ($zeitpunkt/86400); // Umrechnung von Sekunden in Tage (letzter Eintrag)
    $letztdat = floor($letztwert); // Datum als Zahlenwert ohne Nachkommastellen (letzter Eintrag)

    if ($jetztdat <> $letztdat){ // Uebertragen der Besucherzahl (bei Datumswechsel) auf gestern
    $gestern = $heute;
    $heute = 0;
    }

    $ip = $_SERVER["REMOTE_ADDR"]; // IP des Besuchers abfragen

    if ($ip <> $gastip){ // war der Besucher noch nicht auf dieser Seite?
    $heute = $heute + 1;
    $gesamt= $gesamt + 1;
    // Ueberschreiben der gespeicherten Werte
    $query = mysql_query("UPDATE gaestezaehler SET gastip = '$ip', zeitpunkt = '$timestamp', heute = '$heute', gestern = '$gestern', gesamt = '$gesamt' WHERE id=1");
    }else if(($timestamp - $zeitpunkt)> 600){ // war der Besucher in den letzten 10 Minuten schon ein mal auf dieser Seite?
    $heute = $heute + 1;
    $gesamt= $gesamt + 1;
    // Ueberschreiben der gespeicherten Werte
    $query = mysql_query("UPDATE gaestezaehler SET gastip = '$ip', zeitpunkt = '$timestamp', heute = '$heute', gestern = '$gestern', gesamt = '$gesamt' WHERE id=1");
    }

    Schreiben und Lesen der Datenbank funktionieren einwandfrei.
     
  2. rushfast

    rushfast ROM

    Die Unterschiede rühren daher, dass Google Analytics nur den "echten" Traffic auswertet, also Bots als solche erkennt und etc. ausklammert. Dein Counter zählt natürlich alles mit, also auch die ganzen Bots...
     

Diese Seite empfehlen