Hi!
Ich habe da mal eine Frage:
Ich würde gern den Onlinestatus aus phpBB auslesen von einem bestimmten User. Ist dies möglich und wenn ja, wie?
ich will nämlich den Onlinestatus in einer anderen Liste mit aufführen.
Onlinestatus auslesen
Re: Onlinestatus auslesen
guck dir die stelle ein, wo der status original gebildet wird, dann erschließt sich der umbau schnell..
-
- Mitglied
- Beiträge: 17
- Registriert: 05.04.2009 15:53
Re: Onlinestatus auslesen
Hab ich getan, aber ich bin nicht so weit in php fortgeschritten, dass ich das alles da versteh! 

Zuletzt geändert von LP_Stiller am 24.04.2009 18:30, insgesamt 1-mal geändert.
Re: Onlinestatus auslesen
Der online status hängt von der phpbb_sessions tabelle ab. Da muss man in einer SQL abfrage einen OUTER JOIN machen, damit ein fehlender datensatz keine probleme beschert. OUTER JOINs sind LEFT oder RIGHT joins. Das ganze sieht zum beispiel so aus:
Nun bekommt man eine liste aller user, und falls der user online ist, ist dessen session_id im datensatz vorhanden.
Code: Alles auswählen
SELECT u.username, s.session_id
FROM phpbb_users u
LEFT JOIN phpbb_sessions s
ON u.user_id = s.session_user_id
-
- Mitglied
- Beiträge: 17
- Registriert: 05.04.2009 15:53
Re: Onlinestatus auslesen
also stinknormal als array auslesen und dann erstmal print_r() machen, damit man sieht, was da los ist.....
Wenn das so funkt sollte ich ja nur noch schauen müssen, ob da irgendwo bei user_id der user steht....wenn nicht könnte ich ja auch aus den Userdetails da den Wert für letztes mal online auslesen....
Wer anders meinte, dass ich einfach aus den Userdetails auslesen lassen soll, wann der das letzte mal online war und dann schauen, ob das vor ner minute war oder nicht....stelle ir aber vor, dass die angaben da meist erst nach seasonablauf aktualisiert werden
Wenn das so funkt sollte ich ja nur noch schauen müssen, ob da irgendwo bei user_id der user steht....wenn nicht könnte ich ja auch aus den Userdetails da den Wert für letztes mal online auslesen....
Wer anders meinte, dass ich einfach aus den Userdetails auslesen lassen soll, wann der das letzte mal online war und dann schauen, ob das vor ner minute war oder nicht....stelle ir aber vor, dass die angaben da meist erst nach seasonablauf aktualisiert werden
-
- Mitglied
- Beiträge: 17
- Registriert: 05.04.2009 15:53
Re: Onlinestatus auslesen
Also hab jetzt nen bisschen rumprobiert! Also bekommen tu ich was, aber nur von Anonymus. Dabei bin ich selber gerade online!!
So schaut mein Script aus:
Muss ich den User schon hier irgendwo angeben?
So schaut mein Script aus:
Code: Alles auswählen
<?php
$db = mysql_connect('***','***','***','***');
mysql_select_db("***", $db);
$query = sprintf("SELECT u.username, s.session_id FROM sfb_users u LEFT JOIN sfb_sessions s ON u.user_id = s.session_user_id");
$result = mysql_query($query, $db);
$daten = mysql_fetch_array($result);
mysql_close($db);
print_r($daten);
?>