Thread Author: playershadow
Thread ID: 232
Thread Info
Es gibt 21 Beiträge zu diesem Thema, und es wurde 4523 mal angesehen.  Es gibt auch Dateianhänge.
Wer ist hier? 1 Gäste

 Thema drucken
Onlinestatus des Users
playershadow
Ich habe mal eine Frage wie bekomme ich es hin, dass in der Shoutbox neben dem Usernamen zu sehen ist, ob der User online ist oder nicht. Und noch eine Frage wie bekomme ich es hin das im Profil zu sehen ist ob der User online ist oder nicht. Um antwort würde ich mich freuen.
 
SC-Ad-Bot
 
Gr@n@dE
Das geschieht mit einer mit einer kleinen If Abfrage. :)

Hier mal ein Beispiel:

Code 

$lastseen = time() - $user_data['user_lastvisit'];
if($lastseen < 60) {
echo " <span style='color:green;'>Online</span>";
} else {
echo " <span style='color:red;'>Offline</span>";
}

$user_data bitte den gegeben Datenbank Abfragen anpassen.
Gruß Ralf
__________________________________
KEIN Support per Mail, ICQ oder PN !
 
playershadow
Danke für die schnelle Antwort, aber wie füge ich es z.b. in der Shoutbox ein.
 
Gr@n@dE
Zitat Gr@n@dE schrieb:
$user_data bitte den gegeben Datenbank Abfragen anpassen.


Wink
Gruß Ralf
__________________________________
KEIN Support per Mail, ICQ oder PN !
 
playershadow
Danke für die Hilfe. Es funktioniert.Smile
Bearbeitet von playershadow am 23.11.2008 um 00:03
 
Gr@n@dE
Schön zu hören Wink
Gruß Ralf
__________________________________
KEIN Support per Mail, ICQ oder PN !
 
8eww
habe das probiert:

Zitat $lastseen = time() - $user_data['user_lastvisit'];
if($lastseen < 60) {
$lastseen = "<img src='".IMAGES."profil/on.png' border='0'>";
} else {
$lastseen = "<img src='".IMAGES."profil/off.png' border='0'>";}


und das
Zitat $lastseen = time() - $data['user_lastvisit'];
if($lastseen < 60) {
$lastseen = "<img src='".IMAGES."profil/on.png' border='0'>";
} else {
$lastseen = "<img src='".IMAGES."profil/off.png' border='0'>";}


aber beides geht nicht
 
Gr@n@dE
Em, wo willst du das den hin haben oder hast du es eventuell vor eine Abfrage getan ?

Wenn du raus finden willst die Variable heißt dann such mal nach "dbarray" in der Datei und schreib es nach dieser Abfrage mit der abgeänderten Variable hin. Dann sollte es ohne Probleme gehen, vorausgesetzt es wird bei der Abfrage mit Selectet Wink
Gruß Ralf
__________________________________
KEIN Support per Mail, ICQ oder PN !
 
8eww
ich ahbe es jetzt so:

Code 

$res=dbquery("SELECT user_lastvisit FROM ".DB_USERS."");
$udata = dbarray($res);

   $lastseen = time() - $udata['user_lastvisit'];
if($lastseen < 60) {
$lastseen = "<img src='".IMAGES."profil/on.png' border='0'>";
} else {
$lastseen = "<img src='".IMAGES."profil/off.png' border='0'>";}

 
Gr@n@dE
Da wäre noch ein "WHERE" gut da er bei der Aktuellen Abfrage alle Selectet schlecht
Gruß Ralf
__________________________________
KEIN Support per Mail, ICQ oder PN !
 
8eww
nd weiter ? bin da grade bissl rat los
 
Gr@n@dE
Habe dir mal ein Beispiel gebaut. Bei diesem Beispiel wird die User Id über die Adresszeile übergeben und somit wird die letzte Zeit wo der User geguckt hat genommen. ;)

Kannst aber wenn möglich auch von einer anderen Datenbank die Id nehmen. Kommt drauf an wo du das brauchst, das hattest du ja nicht dazu geschrieben. Da hätte ich es genauer sagen können. *schlecht*

Code 

$uebergebene_user_id = (isset($_GET['user_id']) && isnum($_GET['user_id']) ? $_GET['user_id'] : 0);
$res=dbquery("SELECT user_lastvisit FROM ".DB_USERS." WHERE user_id='".$uebergebene_user_id."'");


Gruß Ralf
__________________________________
KEIN Support per Mail, ICQ oder PN !
 
8eww
es ist für de shoutbox !!!
 
Gr@n@dE
Erstmal Datenbank anpassen:

Code 

$result = dbquery(
   "SELECT ts.*, tu.user_id, tu.user_name, tu.user_lastvisit FROM ".DB_SHOUTBOX." ts
   LEFT JOIN ".DB_USERS." tu ON ts.shout_name=tu.user_id
   ORDER BY ts.shout_datestamp DESC LIMIT 0,".$settings['numofshouts']
);


und dann den Code innerhalb die While Schleife einbauen.
Die Variable ist $data ;)
Gruß Ralf
__________________________________
KEIN Support per Mail, ICQ oder PN !
 
8eww
klappt ne wenn ich das so mache dann seh ich keine shouts mehr und dann nix mehr reinschreiben

Code 

$$result = dbquery(
   "SELECT ts.*, tu.user_id, tu.user_name, tu.user_lastvisit, tu.user_level FROM ".DB_SHOUTBOX." ts
   LEFT JOIN ".DB_USERS." tu ON ts.shout_name=tu.user_id
   ORDER BY ts.shout_datestamp DESC LIMIT 0,".$settings['numofshouts']
);


if (dbrows($result)) {
   $i = 0;
   while ($data = dbarray($result)) {



$lastseen = time() - $data['user_lastvisit'];
if($lastseen < 60) {
$lastseen = "<img src='".IMAGES."profil/on.png' border='0'>";
} else {
$lastseen = "<img src='".IMAGES."profil/off.png' border='0'>";}   
#######USERLEVEL##########   
   if ($data['user_level'] == "103") { $user = "<font color='#FF0000'><b>".$data['user_name']."</b></font>"; }
elseif ($data['user_level'] == "102") { $user = "<font color='#0000FF'><b>".$data['user_name']."</b></font>"; }
elseif ($data['user_level'] == "101") { $user = "<font color='#000000'><b>".$data['user_name']."</b></font>"; }
##########ON/OFF###########





      echo "<div class='shoutboxname'>";
      if ($data['user_name']) {
         echo "<a href='".BASEDIR."profile.php?lookup=".$data['shout_name']."' class='side'>".$data['user_name']."</a>&nbsp;".$lastseen."";
      } else {
         echo $data['shout_name']."\n";

 
Gr@n@dE
Hast du da ein doppeltes Doller Zeichen ? "$$result"

Wird wahrscheinlich der Fehler sein, den alles andere ist richtig.
Gruß Ralf
__________________________________
KEIN Support per Mail, ICQ oder PN !
 
8eww
eek ups mein fehler sorry !!! ok jetzt geht es Wink danke dir
 
Paramedic-94
Guten Morgen,
Sorry wenn ich das Thema aufrolle denn ich würd auch gern bei mir einen Onlinestatus in die Standart-Shoutbox einpflegen. Ich nutze die PHP-Fusion Version 7.01.06. Irgendwie aber Funktioniert das nicht bei mir


Habe diesen Code:

Code 

$result = dbquery(
   "SELECT ts.shout_id, ts.shout_name, ts.shout_message, ts.shout_datestamp, tu.user_id, tu.user_name, tu.user_status
   FROM ".DB_SHOUTBOX." ts
   LEFT JOIN ".DB_USERS." tu ON ts.shout_name=tu.user_id
   WHERE shout_hidden='0'
   ORDER BY ts.shout_datestamp DESC LIMIT 0,".$settings['numofshouts']
);
if (dbrows($result)) {
   $i = 0;
   while ($data = dbarray($result)) {
   $result = dbquery(
   "SELECT ts.*, tu.user_id, tu.user_name, tu.user_lastvisit, tu.user_level FROM ".DB_SHOUTBOX." ts
   LEFT JOIN ".DB_USERS." tu ON ts.shout_name=tu.user_id
   ORDER BY ts.shout_datestamp DESC LIMIT 0,".$settings['numofshouts']
);


if (dbrows($result)) {
   $i = 0;
   while ($data = dbarray($result)) {



$lastseen = time() - $data['user_lastvisit'];
if($lastseen < 60) {
$lastseen = "<img src='".IMAGES."Bild_Material/online.gif' border='0'>";
} else {
$lastseen = "<img src='".IMAGES."Bild_Material/offline.gif' border='0'>";}   
#######USERLEVEL##########   
   if ($data['user_level'] == "103") { $user = "<font color='#FF0000'><b>".$data['user_name']."</b></font>"; }
elseif ($data['user_level'] == "102") { $user = "<font color='#FF7755'><b>".$data['user_name']."</b></font>"; }
elseif ($data['user_level'] == "101") { $user = "<font color='#000000'><b>".$data['user_name']."</b></font>"; }
##########ON/OFF###########



Eventuell kann sich ja mal jemand die Shoutbox ansehen. Hab mal die Datei angehangen.


Würde mich über Hilfe sehr Freuen!


Editiert: Habe es Versucht, ohne Erfolg nun meinen Versuch via Code eingefügt inkl. Shoutbox im Anhang
Paramedic-94 hat folgende Datei angehängt:

shoutbox_panel_9.rar [3.18kB / 251 mal Heruntergeladen]


Downloaded by:

Bearbeitet von Paramedic-94 am 30.03.2012 um 07:47
Mit freundlichen Grüßen
Jean-Paul
Inhaber von www.JPPRO.de
 
Septron
@Rescue die Beiträge zu Pushen bringt dir mal rein garnichts Lese dir die Forum Regeln durch !!!

Mal geduld aufbringen dann klapps auch Wink
www.septron.de/signaturen/septron_1.png
 
Paramedic-94
Das ist aber keine Nützliche Antwort! Abgesehen davon sieht man ja was raus kommt wenn man "Wartet". Nähmlich gar nichts .. Anstatt mir ggf. zu Helfen wird man ja Verwarnt.

Es gibt vllt. Menschen die haben auch nicht 100 Jahre Zeit... aber naja..


//EDIT von Septron: Es gibt Regeln die beachtet werden sollen desweiteren ist das Helfen auf Hobbybasis jeder muss ab und an mal länger warten auf Antworten seiner Frage darunter Zählen auch wir Teammitglieder denn nicht zu vergessen wir haben auch noch ein Privat Leben...
Bearbeitet von am 31.03.2012 um 11:16
Mit freundlichen Grüßen
Jean-Paul
Inhaber von www.JPPRO.de
 

Springe ins Forum:

 Ähnliche Themen 

TEST
Thema Forum Antworten Letzter Beitrag
[Gelöst] fehler bei weiterleitung der homepage des users PHP & MySql 15 06.12.2008 um 08:06
Stevee