User online gewesen
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
abfrage
aktuelle datum
auslese
bocken
code
date
datenbank
datum
forum
frage
funktion
gleichen code
letzten eintrag
routine
spalten
tabelle
tag
uhr
umsetzen
zeile
-
Man sieht ja immer wieder in Foren wer an diesem Tag schon einmal online gewesen ist.
und da ich in meinem Forum so eine Funktion nicht finde wollte ich mal fragen ob man sowas nicht mit PHP und MySQL machen kann, das die meisten Foren ja eh damit geschrieben sind.
Auserdem wollte ich diese Funktion nicht nur in mein Forum einbauen sondern auch auf meine Hompage, die ein Login menue hat. (aber das sollte ja über den gleichen code gehen.
im MySQL wird man ja eh neue tabellen bzw spalten anlegen müssen, da dass ja immer für einen tag gespeichert werrden muss und nicht nur für die onlinezeit wie in den meisten foren. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Die Grund Idee ist ja simpel. Wenn sich user x einloggt musst du einfach nur ihn in eine datenbank schreiben lassen (user id) da steht er denn für den Rest des tages drin.
Naja loggt sich user y ein wird er in dieser datenbank auch gespeichert
Zum auslesen nimmt man dann einfach die user id und nimmt dann den namen des Users per SQL abfrage. Nun musste das nur noch umsetzen ;) -
Im besten Fall schreibst du auch noch in die DB wann der User da war, dann kannst du auch wie hier bei Lima anzeigen, dass er schon xy Stunden nicht mehr on war
-
jo bleibt denn ein eintag den ganzen tag oder bis der durch einen anderen code wieder rausgenommen wird?
wenn der jeden tag gelöscht werden muss kann man das irdendwie automatisch für jeden user machen? habe kein bock für jeden user ne zeile zu schreiben. -
versteh ich nicht aber mal zur Erklärung:
1 User loggt sich ein du hast ne Datenbank:
DB-->user,day
user --> wenn er sich einloggt speicherst da die ID vom User und rufst sie bei dem PHP Skript ab wer denn schon on war
wann er sich eingeloggt hat beispiel 2008-03-30
dann machste mit php eine Variable $date=date(); --> die brauchst du um zu wissen wie das aktuelle Datum ist.
Naja und bei der Abfrage rufst du nur die Daten auf die am heutigen Tag schon da waren sprich:
SELECT user FROM tabelle WHERE date=\'$date\'
mehr würde ich zum Anfang nicht machen -
Ich würde es auch so machen wie thevamp das gesagt hat.
Du könntest aber auch immer um 24 Uhr die MySQL-Tabelle wieder leeren, anstatt das Datum abzuspeichern... -
jo bleibt denn ein eintag den ganzen tag oder bis der durch einen anderen code wieder rausgenommen wird?
wenn der jeden tag gelöscht werden muss kann man das irdendwie automatisch für jeden user machen? habe kein bock für jeden user ne zeile zu schreiben.
Du solltest, wie bereits beschrieben einfach nur bei jeder Aktion eines eingeloggten Users in die DB das aktuelle Datum und die Uhrzeit schreiben lassen. Und um deine Frage zu beantworten: Einfach den letzten Eintrag überschreiben. So steht immer in der DB wann der User das letzte mal aktiv war. Hast du das funktionierend eingebaut, hast du dein fertigen Online Script.
Schreibe diese Routine am besten in eine online.php, die immer in jeder Seite per include(\"seite.php\"); eingebunden. wird.
Yazurah -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage