source: trunk/pages/online.php@ 583

Last change on this file since 583 was 583, checked in by george, 16 years ago
  • Opraveno: Chyba v CSS stylech způsobovala špatné zobrazení rámečků tabulek a stylů dalších prvnků.
  • Upraveno: Sjednocen styl různých tabulek.
  • Upraveno: Přepis nejednotného přístupu k databázi přes jiné proměnné a konstanty než dle konfigurace proměnné $Config.
File size: 2.9 KB
Line 
1<?php
2
3$order_by = (isset($_GET['order'])) ? $db->real_escape_string($_GET['order']) : 'name';
4$dir = (isset($_GET['dir'])) ? $db->real_escape_string($_GET['dir']) : 'down';
5$order_dir = ($dir == 'up') ? 'ASC' :'DESC';
6$dir = ($dir == 'down') ? 'up' : 'down';
7$dir_img = ($dir == 'down') ? '<img src="imgs/inc/up.gif" alt="vzestupně" />' : '<img src="imgs/inc/down.gif" alt="sestupně"/>';
8
9function MakeLink($show, $sort)
10{
11 global $dir, $dir_img;
12 if(isset($_GET['order']) and $_GET['order'] == $sort)
13 {
14 $arrow = $dir_img;
15 }
16 else
17 {
18 $arrow = '';
19 }
20 return($arrow.'<a href="?page=online&amp;order='.$sort.'&amp;dir='.$dir.'">'.$show.'</a>');
21}
22
23echo('Ve hře se právě nachází '.$server->MangosOnline().' hráčů.'.
24'<center>
25<table class="BaseTable">
26 <tr>
27 <th align="center">Frakce</th>
28 <th align="center">'.MakeLink('Nick', 'name').'</th>
29 <th align="center">'.MakeLink('Rasa', 'race').'</th>
30 <th align="center">'.MakeLink('Class', 'class').'</th>
31 <th align="center">'.MakeLink('Lvl', 'level').'</th>
32 <th align="center">'.MakeLink('Mapa', 'map').'</th>
33 <th align="center">'.MakeLink('Honory', 'highest_rank').'<br />'.
34 MakeLink('Aréna body', 'arena_points').'</th></tr>');
35
36$db->select_db($Config['Mangos']['DatabaseCharacters']);
37$sql = $db->query('SELECT guid, name, race, class, zone, map, '.
38 'CAST( SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, " ", '.$Config['Mangos']['CharacterDataOffset']['HonorPoints'].'+1), " ", -1) AS UNSIGNED) AS highest_rank, '.
39 'CAST( SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, " ", '.$Config['Mangos']['CharacterDataOffset']['Level'].' + 1), " ", -1) AS UNSIGNED) AS level, '.
40 'CAST( SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, " ", '.$Config['Mangos']['CharacterDataOffset']['ArenaPoints'].' + 1), " ", -1) AS UNSIGNED) AS arena_points, '.
41 'mid(lpad( hex( CAST(substring_index(substring_index(data, " ", '.$Config['Mangos']['CharacterDataOffset']['Gender'].' + 1), " ", -1) as unsigned) ), 8, 0), 4, 1) AS gender '.
42 'FROM `characters` WHERE `online`= 1 ORDER BY `'.$order_by.'` '.$order_dir);
43while($row = $sql->fetch_assoc())
44{
45 $aliance = array(1, 3, 4, 7, 11);
46 $frakce = (in_array($row['race'], $aliance)) ? '<img src="imgs/inc/a.gif" alt="aliance"/>' : '<img src="imgs/inc/h.gif" alt="horda" />';
47 $gender = ($row['gender'] == 0) ? '0' : '1';
48 echo('<tr>
49 <td align="center">'.$frakce.'</td>
50 <td align="center">'.$row['name'].'</td>
51 <td align="center"><img src="imgs/icons/'.$row['race'].'-'.$gender.'.gif" alt="rasa" /></td>
52 <td align="center"><img src="imgs/icons/'.$row['class'].'.gif" alt="třída" /></td>
53 <td align="center">'.$row['level'].'</td>
54 <td align="center">'.$server->MapName($row['map']).'<br />('.$server->ZoneName($row['zone']).')</td>
55 <td align="center">'.$row['highest_rank'].'<br />'.$row['arena_points'].'</td></tr>');
56}
57echo('</table></center>');
58
59?>
Note: See TracBrowser for help on using the repository browser.