/MySQL
Stabmaster
- php
hallo leute,
hätte da ein anliegen.
ich wollte mir eine ausführliche statistik bauen.
darin enthalten sein sollte:
Besucher gesamt
Besucher heute
Besucher gestern
Online zurzeit (ich weis, ist nicht so toll, soll aber dabei sein)
vll auch noch ne wochenstatistik
jetzt bräuchte ich folgende tipps:
hoffe ich habe grad nichts vergessen aufzuschreiben.
wenn mir da leute helfen können, wäre das klasse.
mfg
Stabmaster
PS: bitte kommt mir nicht mit: "geh auf seite xyz und lad dir eins runner".
möchte es gerne selber coden.
sorry, hab vergessen gehabt den titel richtig aufzuführen.
bitte nicht sauer sein.
Hi,
- Online zurzeit (ich weis, ist nicht so toll,
nicht so toll? Es ist schlicht und ergreifend gelogen, was immer Du auch sagst. Ausnahmen sind die Werte "1" und "0", die zumindest eine Chance haben, richtig zu sein.
- wie sollte ich am besten überprüfen, ob der user schon berücksichtigt wurde
Es existiert keine Definition des Begriffes "User". Schaffe also zunächst eine, die Deinen Ansprüchen genügt.
- wie soll ich die db struktur anlegen mit allen berücksichtigungen
Zumindest Zeitpunkt und User-Identifikation sollten vorhanden sein, ggf. auch Besuch-Identifikation (wie immer Du "Besuch" definierst).
PS: bitte kommt mir nicht mit: "geh auf seite xyz und lad dir eins runner".
möchte es gerne selber coden.
Mit dieser Einsicht bist Du hier gerne gesehen. Deinem Konzept fehlen aber noch äußerst wesentliche Punkte, ohne die eine Lösung nicht möglich ist.
Cheatah
Hi
Deinem Konzept fehlen aber noch äußerst wesentliche Punkte, ohne die eine Lösung nicht möglich ist.
hm, könntest du mir auf die sprünge helfen und sagen, welche es wären.
komm da leider nicht drauf, was ich nicht berücksichtigt habe.
mfg
Stabmaster
Hi,
Deinem Konzept fehlen aber noch äußerst wesentliche Punkte, ohne die eine Lösung nicht möglich ist.
hm, könntest du mir auf die sprünge helfen und sagen, welche es wären.
das nannte ich im Posting bereits vorher.
komm da leider nicht drauf, was ich nicht berücksichtigt habe.
Die Definitionen wesentlicher in HTTP unbekannter Begriffe.
Cheatah
Halihallo Stabmaster
ich wollte mir eine ausführliche statistik bauen.
Hälst du die für derart ausführlich?
darin enthalten sein sollte:
- Besucher gesamt
- Besucher heute
- Besucher gestern
Was Cheatah fragt: Was ist in deinen Augen ein Besucher?
Einer der über Cookies identifiziert wird?
|
+-- nicht jeder hat Cookies aktiviert und du wirst dadurch
unweigerlich mehr zählen, als tatsächlich vorbeigeschaut haben.
Einer der über IP oder Browsermerkmale identifiziert wird?
|
+-- ganze Firmennetzwerke haben dieselbe IP und/oder
Browsermerkmale, so wirst du unweigerlich auch falsche Daten
zählen.
Einer der mindestens 20 Minuten, mindestens 30 Minuten, wenigstens
einmal pro Tag, mindestens einmal pro Woche, mindestens eine
Browsersitzung, ... auf deiner Website war?
_Du_ musst dir wirklich ersteinmal klar werden, was du als "Besucher"
wertest, denn dieser Begriff (s. Cheatah) existiert im HTTP nicht.
- Online zurzeit (ich weis, ist nicht so toll, soll aber dabei sein)
Wie willst du in einem zustandslosen Protokoll wissen, ob derjenige
welche noch auf deiner Seite ist, oder nicht schon lange auf
www.msdn.com nach einem Patch für seinen IE sucht?
- vll auch noch ne wochenstatistik
Das ist das kleinste Problem ;)
GROUP BY über die Statistik-Tabelle einfach per WEEK(datum_col)
- wie sollte ich am besten überprüfen, ob der user schon berücksichtigt wurde
Nun, es geht gar nicht. Siehe obengenannte Punkte zum
Begriff "Besucher". Aber die wohl beste "Annäherung" wäre über
Cookies. Bei jedem Zugriff wird ein Cookie gesendet, wurde ein
Cookie empfangen hast du den Besucher schon gezählt. Über die
Expires-Angabe im Cookie hast du eine unverlässliche Möglichkeit die
Zeitdauer indem der Besucher als Besucher gilt festzulegen. Lässt du
diese weg gilt der Cookie genau die Browsersitzung lang und du misst
die sogenannten (Browser-)Sessions. Setzt du Expires auf einen Tag,
hast du die sogenannten UniqueUsers pro Tag.
- wie soll ich die db struktur anlegen mit allen berücksichtigungen
Das "Besucher-Online"-Zeug wirft eine einfache Lösung über den
Haufen. Liessest du es weg, erspart es dir einiges an Sorgen.
Um Besucher-Online zu messen, müsstest du wie Cheatah sagt, jedem
Benutzer ein eindeutiges Merkmal zuweisen. Dann zählst du einfach
alle unterschiedlichen Merkmale der letzten sagen wir mal 5 Minuten
und hast einen unwirklich, falschen Wert davon, wie viele "Menschen"/
Besucher sich auf deiner Website grad rumtummeln.
Für alles andere wirds einfach:
PRIMARY KEY rep_date DATE (Tag)
PRIMARY KEY page_id INT (ggf. sollen mehrere Pages überwacht
werden?)
rep_pageviews INT (Anzahl Pageviews)
rep_sessions INT (Anzahl Sessions)
rep_unique_user INT (Anzahl Besucher)
Dein Script muss dann einfach beim erkennen eines Unique Users z.B.
den Wert in rep_unique_user beim aktuellen Datum um eins erhöhen.
Genauso für Pageviews und Sessions. So viel Input zu beginn.
PS: bitte kommt mir nicht mit: "geh auf seite xyz und lad dir eins runner".
möchte es gerne selber coden.
Sehr gut. Ich schliesse mich Cheatah's Aussage an.
Ansonsten darf ich http://aktuell.de.selfhtml.org/artikel/programmiertechnik/useronline/index.htm
als Lektüre empfehlen, dann kannst du Cheatah vielleicht etwas besser
verstehen ;)
Viele Grüsse
Philipp