PC bei OnlineScript nicht werten -> Wie mach ich das?

Hallo zusammen,

ich habe auf meiner Website ein User-Online Script laufen welches mir anzeigt wie viele User Insgesamt/Jetzt/Heute/Gestern Online sind/waren. Leider werde auch ich immer mit aufgelistet, soweit kein Problem, könnte ja theoretisch ein Cookie bei mir reinhauen und mich darüber ausschließen lassen, aber da ich immer alle Cookies löschen lasse sobald ich meinen Browser schließe wäre diese Methode ziemlich umständlich.

Das ganze ist in PHP Programmiert, wollte eigentlich den Rechnernamen/Usernamen oder dergleichen auslesen lassen, aber einerseits finde ich dazu nichts wirklich präzises, andererseits funktioniert das was ich finde noch nicht mal bei mir lokal. Nun meine Frage an euch, wie kann ich dafür sorgen das wenn ich meine HP besuche ich auf keinen Fall gewertet werde?

Hier mal der Quellcode für meine "Besucher Gesamt" Script:

Code:
function besucher()

   {

    $sql = "SELECT

                COUNT(*) as Anzahl

            FROM

                zaehler

            WHERE

                IP = '".$_SERVER['REMOTE_ADDR']."'";

    $result = mysql_query($sql) OR die(mysql_error());

    $row = mysql_fetch_assoc($result);

    if($row['Anzahl']) {

       $sql2 ="Select Datum

               From zaehler

               Where IP ='".$_SERVER['REMOTE_ADDR']."'

               ORDER BY Datum DESC

               Limit 1";

       $result2 = mysql_query($sql2) OR die(mysql_error());

       $row2 = mysql_fetch_assoc($result2);

       $eingelogt = $row2['Datum'];

       $datum = date("Y-m-d");

       if ($eingelogt < $datum){

           // Neuer eintra

           $sql = "INSERT INTO zaehler

                       (IP, Datum)

                   VALUES

                       ('".$_SERVER['REMOTE_ADDR']."', NOW())";

           mysql_query($sql) OR die(mysql_error());

       };

    } else {

        // Neuer eintra

        $sql = "INSERT INTO zaehler

                    (IP, Datum)

                VALUES

                    ('".$_SERVER['REMOTE_ADDR']."', NOW())";

        mysql_query($sql) OR die(mysql_error());

    }

    // Anzahl Ausgeben

    $sql = "SELECT

                COUNT(*) as Anzahl

            FROM

                zaehler";

    $result = mysql_query($sql) OR die(mysql_error());

    $row = mysql_fetch_assoc($result);

    $anzahl =$row['Anzahl'];

    echo " Besucher Gesamt : ".$anzahl."<br />";

    };

Hier meine Website Blackdevile

Freue mich über jegliche Antworten hinweise Tips die mir weiterhelfen.

Danke schonmal im vorraus

greetz
chris
 
ich hab zwar nich viel ahnung von php, aber ich würde einfach immer nen zusätzlichen parameter (variable) übergeben und wenn diese vorhanden ist oder einen bestimmten wert hat, nicht gezählt wird.
Mfg ThePhil
 
joa, das mit dem zusätzlichen Parameter ist scho keine schlechte Idee, aber welchen kann ich d a abfragen, wie gesagt, mir ist bisher nur PC-Name oder Username eingefallen denn der Benutzer (ich) aufm Rechner hat, einloggen möchte ich mich nicht, da ich das vor mein Website schalten müsste, und da müssten ja auch "alle meine" User lang, das möchte ich nicht.

Den Parameter IP kann ich zwar auswerten, aber die ändert sich ja alle 24h. ALso ist das auch nix.

Suche also immernoch nach einem passendem Wert der sich nicht ändert.

greetz
chris
 
Eine direkte Idee habe ich derzeit nicht, aber ich kann dir zumindest sagen, dass dein Vorhaben mit dem Rechnernamen/User rein mit PHP nicht funktionieren wird, da PHP nunmal serverseitig ist.
 
1. DynDNS zulegen
2. IP der DynDNS-Domain auflösen und falls sie identisch ist mit $_SERVER['REMOTE_ADDR'], diese IP nicht verwerten.

Vielleicht eine etwas obskure Lösung, aber warum auch nicht. :)
 
@:::Lük:::
Danke, werde ich auf alle fälle mal verfolgen, ob das für mich so praktikabel ist, da ich mit mehreren Rechner zugreife wäre das zwar aufwendig aber vermutlich dennoch möglich. Mal kucken ob ich das hinbekomme

@t3rr0r.bYt3
Wirklich ziemlich obskur ^^, wäre Denke ich möglich, aber doch ziemlich aufwendig. Werde aber auch da mal schauen.

@all other
Bin dennoch über jeden weiteren Hinweis froh.

greetz
chris
 
ich denke das mit dem user agent ist die beste lösung... sollte auch ein ganz einfaches firefox addon dafür geben :)
 
Zurück
Oben