anpera.net https://anpera.homeip.net/phpbb3/ |
|
Onlineanzeige von Eliwood https://anpera.homeip.net/phpbb3/viewtopic.php?f=34&t=4289 |
Seite 1 von 1 |
Autor: | The Core [ Mo 21 Jan, 2008 12:19 ] |
Betreff des Beitrags: | Onlineanzeige von Eliwood |
Hallo, ich benutze die Online Anzeige von Eliwood. Das Problem ist aber das Moderatoren als User angezeigt werden. Ich habe folgende Gruppen: - 0 : USER - 1 : Moderator - 2 : Super-Moderator - 3 : Administrator Wie muss ich den Code verändern damits gehts? Moderatoren und SuperModeratoren können in der gleichen Gruppe Angezeigt werden. $this->bbcode_second_pass_code('', '/* Spieler; Moderatoren; Admin; Onlineanzeige by Eliwood */ $onlinecount = 0; $users = 0; $mods = 0; $admins = 0; $sql="SELECT name,superuser FROM accounts WHERE locked=0 AND loggedin=1 AND laston>'".date("Y-m-d H:i:s",strtotime(date("r")."-".getsetting("LOGINTIMEOUT",900)." seconds"))."' ORDER BY level DESC"; $result = db_query($sql) or die(db_error($sql)); while ($row = db_fetch_assoc($result)){ switch($row['superuser']): case 0: case 1: $text.="`^$row[name]`n"; $users++; break; case 2: //case 3: $text2.="`^$row[name]`n"; $mods++; break; //case 4: //case 5: case 3: $text3.="`^$row[name]`n"; $admins++; break; endswitch; $onlinecount++; } $ret.=appoencode("`@$users Spieler Online:`n"); $ret.=appoencode($text."`0"); if ($users==0) $ret.=appoencode("`iKeine Spieler Online`i`n"); $ret.=appoencode("`n`@$mods Moderatoren Online:`n"); $ret.=appoencode($text2."`0"); if ($mods==0) $ret.=appoencode("`iKeine Moderatoren Online`i`n"); $ret.=appoencode("`n`\$$admins Admins Online:`n"); $ret.=appoencode($text3."`0"); if ($admins==0) $ret.=appoencode("`iKeine Admins Online`i`n"); db_free_result($result); $ret.=(getsetting("maxonline",10)>0?grafbar(getsetting("maxonline",10),(getsetting("maxonline",10)-$onlinecount),180):""); return $ret; }') |
Autor: | MySql [ Mo 21 Jan, 2008 16:41 ] |
Betreff des Beitrags: | Re: Onlineanzeige von Eliwood |
PHP lernen... ![]() $this->bbcode_second_pass_code('', 'case 0: case 1:') Case 0 -> Normale Spieler! Case 1 -> Moderatoren! Case 0 und Case 1 teilen sich die gleiche Fläche. D.h. Spieler und Moderatoren werden zusammen ausgegeben und nicht getrennt! |
Autor: | The Core [ Mo 21 Jan, 2008 17:21 ] |
Betreff des Beitrags: | Re: Onlineanzeige von Eliwood |
Wie denn jetzt? Ich lerne gerade PHP, addnav Links gehen schon ![]() Kannst du nicht einfach den Code hinschreiben? |
Autor: | MySql [ Mo 21 Jan, 2008 17:43 ] |
Betreff des Beitrags: | Re: Onlineanzeige von Eliwood |
$this->bbcode_second_pass_code('', '/* Spieler; Moderatoren; Admin; Onlineanzeige by Eliwood */ $onlinecount = 0; $users = 0; $mods = 0; $sumods = 0; $admins = 0; $sql="SELECT name,superuser FROM accounts WHERE locked=0 AND loggedin=1 AND laston>'".date("Y-m-d H:i:s",strtotime(date("r")."-".getsetting("LOGINTIMEOUT",900)." seconds"))."' ORDER BY level DESC"; $result = db_query($sql) or die(db_error($sql)); while ($row = db_fetch_assoc($result)){ switch($row['superuser']): case 0: $text.="`^$row[name]`n"; $users++; break; case 1: $text2.="`^$row[name]`n"; $mods++; break; case 2: $text3.="`^$row[name]`n"; $mods++; break; case 3: $text4.="`^$row[name]`n"; $admins++; break; endswitch; $onlinecount++; } $ret.=appoencode("`@$users Spieler Online:`n"); $ret.=appoencode($text."`0"); if ($users==0) $ret.=appoencode("`iKeine Spieler Online`i`n"); $ret.=appoencode("`n`@$mods Moderatoren Online:`n"); $ret.=appoencode($text2."`0"); if ($mods==0) $ret.=appoencode("`iKeine Moderatoren Online`i`n"); $ret.=appoencode("`n`\$$sumods Super-Moderatoren Online:`n"); $ret.=appoencode($text3."`0"); if ($sumods==0) $ret.=appoencode("`iKeine Super-Moderatoren Online`i`n"); $ret.=appoencode("`n`\$$admins Admins Online:`n"); $ret.=appoencode($text4."`0"); if ($admins==0) $ret.=appoencode("`iKeine Admins Online`i`n"); db_free_result($result); $ret.=(getsetting("maxonline",10)>0?grafbar(getsetting("maxonline",10),(getsetting("maxonline",10)-$onlinecount),180):""); return $ret; }') |
Autor: | Drazaar [ Fr 25 Jan, 2008 00:23 ] |
Betreff des Beitrags: | Re: Onlineanzeige von Eliwood |
MySql hat geschrieben: $this->bbcode_second_pass_code('', '/* Spieler; Moderatoren; Admin; Onlineanzeige by Eliwood */ $onlinecount = 0; $users = 0; $mods = 0; $sumods = 0; $admins = 0; $sql="SELECT name,superuser FROM accounts WHERE locked=0 AND loggedin=1 AND laston>'".date("Y-m-d H:i:s",strtotime(date("r")."-".getsetting("LOGINTIMEOUT",900)." seconds"))."' ORDER BY level DESC"; $result = db_query($sql) or die(db_error($sql)); while ($row = db_fetch_assoc($result)){ switch($row['superuser']): case 0: $text.="`^$row[name]`n"; $users++; break; case 1: $text2.="`^$row[name]`n"; $mods++; break; case 2: $text3.="`^$row[name]`n"; $mods++; break; case 3: $text4.="`^$row[name]`n"; $admins++; break; endswitch; $onlinecount++; } $ret.=appoencode("`@$users Spieler Online:`n"); $ret.=appoencode($text."`0"); if ($users==0) $ret.=appoencode("`iKeine Spieler Online`i`n"); $ret.=appoencode("`n`@$mods Moderatoren Online:`n"); $ret.=appoencode($text2."`0"); if ($mods==0) $ret.=appoencode("`iKeine Moderatoren Online`i`n"); $ret.=appoencode("`n`\$$sumods Super-Moderatoren Online:`n"); $ret.=appoencode($text3."`0"); if ($sumods==0) $ret.=appoencode("`iKeine Super-Moderatoren Online`i`n"); $ret.=appoencode("`n`\$$admins Admins Online:`n"); $ret.=appoencode($text4."`0"); if ($admins==0) $ret.=appoencode("`iKeine Admins Online`i`n"); db_free_result($result); $ret.=(getsetting("maxonline",10)>0?grafbar(getsetting("maxonline",10),(getsetting("maxonline",10)-$onlinecount),180):""); return $ret; }') Er wird dir aber bei der Ausgabe immer die selbe Anzahl an Moderatoren wie Supermoderatoren anzeigen, da du einmal vergessen hast $mods zu ändern: $this->bbcode_second_pass_code('', 'case 2: $text3.="`^$row[name]`n"; $mods++; break;') muss wohl $this->bbcode_second_pass_code('', 'case 2: $text3.="`^$row[name]`n"; $sumods++; break;') heißen. MfG Draz |
Seite 1 von 1 | Alle Zeiten sind UTC + 1 Stunde |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |