• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

Support list [tables]

Krashe

Mapper
Joined
Nov 22, 2008
Messages
184
Reaction score
5
Location
Sweden
This is my first php for tibia ever. It's just a simple support list, works and looks like this;

wiltp.jpg


Access 2 = Tutors goes into tutor table
Access 3 = Senior tutors goes into senior tutor table
Access ABOW 3 = Gamemaster table.

Hope you like it.

PHP:
<?php
$list = $SQL->query('SELECT name,online,group_id,world_id FROM players WHERE players.group_id > 1 ORDER BY group_id DESC');
$gamemaster = $SQL->query('SELECT name,online,group_id FROM players WHERE players.group_id > 4');
$st = $SQL->query('SELECT name,online,group_id FROM players WHERE players.group_id =3');
$tutor = $SQL->query('SELECT name,online,group_id FROM players WHERE players.group_id =2');

$showed_players = 0;
$groups = simplexml_load_file($config['site']['server_path'].'/data/XML/groups.xml') or die('<b>Could not load groups!</b>'); 
        foreach($groups->group as $g) 
            $groupList[(int)$g['id']] = $g['name']; 

                     
$main_content .= '<center><h1><u><b>Support on '.$config['server']['serverName'].'</b></u></h1></center>';
$main_content .= "<table border=0 cellspacing=0 cellpadding=4 width=100%>
	<tr bgcolor=\"".$config['site']['vdarkborder']."\">
	<td width=\"100%\"><font class=white><b>Gamemasters</b></font></td>
	<td width=\"100%\"><font class=white><b>Status</b></font></td>"; 
	
foreach($gamemaster as $gm) {
	if($gm['online'] == 0)
		$player_list_status = '<font color="red"><b>Offline</b></font>';
	else
		$player_list_status = '<font color="green"><b>Online</b></font>';
		if(is_int($showed_players / 2))
			$bgcolor = $config['site']['darkborder'];
		else
			$bgcolor = $config['site']['lightborder'];
			
$showed_players++;
$main_content .= '<tr bgcolor="'.$bgcolor.'"></td><td><a href="?subtopic=characters&name='.urlencode($gm['name']).'">'.$gm['name'].'</a></td><td>'.$player_list_status.'</td>';
} 
 
$main_content .= "</table>";  

$main_content .= "<br /><table border=0 cellspacing=0 cellpadding=4 width=100%>
	<tr bgcolor=\"".$config['site']['vdarkborder']."\">
	<td width=\"100%\"><font class=white><b>Senior Tutors</b></font></td>
	<td width=\"100%\"><font class=white><b>Status</b></font></td>"; 
	
foreach($st as $gm) {
	if($gm['online'] == 0)
		$player_list_status = '<font color="red"><b>Offline</b></font>';
	else
		$player_list_status = '<font color="green"><b>Online</b></font>';
		if(is_int($showed_players / 2))
			$bgcolor = $config['site']['darkborder'];
		else
			$bgcolor = $config['site']['lightborder'];
			
$showed_players++;
$main_content .= '<tr bgcolor="'.$bgcolor.'"></td><td><a href="?subtopic=characters&name='.urlencode($gm['name']).'">'.$gm['name'].'</a></td><td>'.$player_list_status.'</td>';
} 
 
$main_content .= "</table>";  

$main_content .= "<br /><table border=0 cellspacing=0 cellpadding=4 width=100%>
	<tr bgcolor=\"".$config['site']['vdarkborder']."\">
	<td width=\"100%\"><font class=white><b>Tutors</b></font></td>
	<td width=\"100%\"><font class=white><b>Status</b></font></td>"; 
	
foreach($tutor as $gm) {
	if($gm['online'] == 0)
		$player_list_status = '<font color="red"><b>Offline</b></font>';
	else
		$player_list_status = '<font color="green"><b>Online</b></font>';
		if(is_int($showed_players / 2))
			$bgcolor = $config['site']['darkborder'];
		else
			$bgcolor = $config['site']['lightborder'];
			
$showed_players++;
$main_content .= '<tr bgcolor="'.$bgcolor.'"></td><td><a href="?subtopic=characters&name='.urlencode($gm['name']).'">'.$gm['name'].'</a></td><td>'.$player_list_status.'</td>';
} 
 
$main_content .= "</table>"; 
?>
 
a bit shortened
Code:
<?php
$g = array(2 => 'Tutors', 3 => 'Senior Tutors', 4 => 'Gamemasters'); $a = array();

foreach($SQL->query('SELECT name,group_id,online FROM players WHERE group_id!=1 ORDER BY group_id DESC') as $k => $v)
	$a[min(4, $v['group_id'])][] = array($v['name'], (int)$v['online']);

$main_content = '<center><h2>Support on '.$config['server']['serverName'].'</h2></center>';
foreach($a as $k => $v) {
	$main_content .= '<br/>
<table border="0" cellspacing="1" cellpadding="4" width="100%">
	<tr bgcolor="'.$config['site']['vdarkborder'].'">
		<td width="80%"><font color="#efefef"><b>'.$g[$k].'</b></font></td>
		<td><font color="#efefef"><b>Status</b></font></td>
	</tr>';
	foreach($v as $m => $n)
		$main_content .= '
	<tr bgcolor="'.$config['site'][$m % 2 == 0 ? 'lightborder' : 'darkborder'].'">
		<td><a href="?subtopic=characters&amp;name='.urlencode($n[0]).'">'.$n[0].'</a></td>
		<td><font color="#'.($n[1] ? '00bf00"><b>On' : 'ef0000"><b>Off').'line</b></font></td>
	</tr>';
	$main_content .= '
</table>';
}
?>
 
watchout, my code is always messy and dirty/"unsafe" (not as in 'hackable')
 
Adding some kind of contact form to this page would be useful, so players know how to contact admins when they are offline.
 
Back
Top