Anzeige - [Interessiert an einer Anzeige?]
(?) Tags raten (?) (edit)
 
Reply to this topicStart new topicStart Poll
> Datenbank Abfrage wer ist Online
Brian Folte
Geschrieben am: Mi 17.10.2007, 18:29
Report PostQuote Post

AyomRank 6
************

Gruppe: Member (aktiv)
Beiträge: 986
Mitglied seit: 26.03.2004


Nun schlage ich mich mit dem Thema wer ist Online herrum, irgendwie wird es mir einfach nicht angezeigt hier die Datenbank abfrage:

CODE
$abfrageop = ("SELECT * FROM generallog where benutzer=$benutzer");
$ergebnisop = mysql_db_query($mysqldbname,$abfrageop,$db);
while (list($id,$benutzer,$pass,$ablauftime,$idadr) = mysql_fetch_row($ergebnisop))


So funktioniert es nicht. Wenn ich aber hinten anstatt $benutzer einen usernamen eintrage dann wird mir komischerweise der benutzer angezeigt aber alle weiteren nicht.

Klärt mich bitte auf, wie starte ich hier eine richtige Abfrage, was habe ich genau übersehen?

LG Brian und danke für euere Geduld mit mir wink.gif
Top
PMEmail PosterMSN
Top
 
 
MISC
#2 Geschrieben am: Mi 17.10.2007, 19:37 (+01:07)
Report PostQuote Post

AyomRank 3
******

Gruppe: Member (aktiv)
Beiträge: 34
Mitglied seit: 28.03.2006


Du fragst ja nur einen Benutzer aus der Datenbank ab, da die Variable $benutzer ja nur einen Wert annimmt.

Welches Feld in der Datenbank sagt Dir denn, ob ein Benutzer on oder off ist? Wäre dies beispielsweise das Feld "Status", welches für online eine 1 und für offline eine 0 beinhalten würde, dann wäre die Abfrage:

CODE
$abfrageop = ("SELECT * FROM generallog where status= '1'");


Top
PM
Top
 
Brian Folte
#3 Geschrieben am: Mi 17.10.2007, 20:17 (+00:40)
Report PostQuote Post

AyomRank 6
************

Gruppe: Member (aktiv)
Beiträge: 986
Mitglied seit: 26.03.2004


So ein feld besitze ich nicht, ich habe nur folgende: id, ist für die Session id.
benutzer, hier wird der username gespeichert.
ablauftime und idadr .

Hier werden die ganzen zahlen angezeigt die natürlich bei jedem Login anders sind.

Wenn kein user Online ist steht auch nix in der tabelle.

LG Brian
Top
PMEmail PosterMSN
Top
 
Brian Folte
#4 Geschrieben am: Mi 17.10.2007, 20:24 (+00:06)
Report PostQuote Post

AyomRank 6
************

Gruppe: Member (aktiv)
Beiträge: 986
Mitglied seit: 26.03.2004


Wenn ich jetzt folgende Abfrage mache funktioniert es ob es aber so auch richtig ist weiß ich nicht.
CODE
$abfrageop = ("SELECT * FROM generallog ");


LG Brian
Top
PMEmail PosterMSN
Top
 
TSc
#5 Geschrieben am: Mi 17.10.2007, 20:40 (+00:15)
Report PostQuote Post

AyomRank 6
************

Gruppe: Member (aktiv)
Beiträge: 596
Mitglied seit: 8.11.2004


Auf die Art bekommst du alle Benutzer aus der Tabelle angezeigt.
Ob das richtig ist kommt darauf an ob die User aus der Tabelle gelöscht werden wenn sie eine gewisse Zeit lang inaktiv waren.

Ansonsten probier es mit
CODE

$akutellesDatum = getdate();
$abfrageop = ("SELECT * FROM generallog where ablauftime > $akutellesDatum ");


So bekommst du alle Nutzer deren Ablaufzeit noch in der Zukunft liegt.

Du musst dir halt erstmal klar werden woran du erkennst ob ein User noch online oder schon offline ist.

Das Beispiel ist im übrigen nicht unbedingt syntaktisch richtig da ich grade keine Testmöglichkeit habe aber ich hoffe der Sinn wird klar...
Top
PMEmail Poster
Top
 
Brian Folte
#6 Geschrieben am: Do 18.10.2007, 07:26 (+10:46)
Report PostQuote Post

AyomRank 6
************

Gruppe: Member (aktiv)
Beiträge: 986
Mitglied seit: 26.03.2004


Hallo. mein System funktioniert so, ein User loggt sich ein und ist für 60 min gespeichert egal ob er 1min oder 59min Online ist. Nach 60min muss er sich wieder neu einloggen.

Demnach wird der User nach 60 min auch aus der Tabelle gelöscht.
Also denke ich mir, ist es doch das einfachste es so aus der Tabelle auszulesen oder?

LG Brian
Top
PMEmail PosterMSN
Top
 
Brian Folte
#7 Geschrieben am: Fr 19.10.2007, 12:52 (+29:26)
Report PostQuote Post

AyomRank 6
************

Gruppe: Member (aktiv)
Beiträge: 986
Mitglied seit: 26.03.2004


Mich würde auch noch Intressieren wie ich es schaffe das mit genau angezeigt wird wieviele Leute gerade Online sind und wieviele davon Gäste sind.

LG Brian
Top
PMEmail PosterMSN
Top
 
webdoktor
G-Design Websolutions
#8 Geschrieben am: Fr 19.10.2007, 13:00 (+00:07)
Report PostQuote Post

AyomRank 5
**********

Gruppe: Member (aktiv)
Beiträge: 493
Mitglied seit: 16.12.2005


Hey Brian

Habe das gerade gestern auch gemacht. Alles rasch selbst programmiert.
Und zwar wie folgt...

Habe eine neue Datenbank gemacht.
Dann bei jedem Seitenaufruf mache ich das:

//Schauen ob der User schon eingetragen ist anhand seiner IP

//Eintragen der Onlineuser falls der User noch nicht in der DB drin ist

//Löschen der User welche länger als 3 Minuten nicht mehr aktiv waren

Das sind die drei schritte und es funktioniert perfekt. habe dann auch noch
ergänzt, dass ich sehe auf welcher seite er gerade ist usw.

marco
Top
PMEmail PosterUsers Website
Top
 
Thema wird von 0 Benutzer(n) gelesen (0 Gäste und 0 anonyme Benutzer)
0 Mitglieder:
Trackback-Url: http://www.ayom.com/track/t/21174

Topic Options Reply to this topicStart new topicStart Poll

 


> Ähnliche Themen
Flash Online Gaming chipchip 166 2 Sa 23.08.2008, 19:11
Datenbank Zugriff Big Rob 77 1 Mo 18.08.2008, 19:13
Online Marketing Düsseldorf Nico B 144 3 So 17.08.2008, 08:53
ARD / ZDF - Online Studie 2008 Mark_L 780 6 Di 12.08.2008, 14:27
MySQL Abfrage von einer Tabelle webdoktor 387 19 Sa 9.08.2008, 17:45
Brief Online versenden gesucht finanzcheck 185 2 Do 7.08.2008, 10:00
Biete Teamchefposten eines Online Racing Teams an Kluge 493 6 Mi 6.08.2008, 13:34




Anzeige - [Interessiert an einer Anzeige?]



Anzeigen


[Interessiert an einer Anzeige?]