Cześć, mam mały problem z tabelą serwerów na stronie www, problem polega na tym, że jak dodałem drugi serwer do tabelki to wyświetla się wszystko, tylko GameTracker`s wyświetla się taki sam jak na serwerze BF2, wiem że trzeba podmienić coś w wierszu z drugim serwerem, ale gdy to robię to nic się nie zmienia, lub w ogóle nie wyświetla serwera. tabelka jest dołączona do stylu SilentSklill, która znajduje się Tutaj. Problem wyświetla się na mojej stronie Tutaj
status.php
<?php ob_start(); include('status/config.php'); include('status/func.php'); $serwery=0; $gracze=0; $sloty=0;?>
<head>
<!--<?if($automatyczne_odswiezanie){?><meta http-equiv="refresh" content="<?echo $automatyczne_odswiezanie?>"<?}?>/>-->
<link rel="stylesheet" href="status/jquery.tooltip.css" />
<link rel="stylesheet" href="status/style.css" />
<script src="status/js/jquery-1.8.0.min.js" type="text/javascript"></script>
<script src="status/js/jquery.tooltip.js" type="text/javascript"></script>
<script src="status/js/ajax.js" type="text/javascript"></script>
<script type="text/javascript">
function ref(text,i,id)
{
$(function() {
$('#pretty'+i+'-'+id).tooltip({
track: true,
delay: 0,
showURL: false,
fade: 350,
showBody: " - ",
extraClass: "pretty",
fixPNG: true,
top: -35,
bodyHandler: function() {
var tip = text;
var url = $(this).attr("href");
$.ajax({
url:url, success:function(html){tip = html;}, async:true
});
return tip
},
});
});
}
$(function() {
$('.pretty').tooltip({
track: true,
delay: 0,
showURL: false,
fade: 350,
showBody: " - ",
extraClass: "pretty",
fixPNG: true,
top: -35,
});
});
var inf=Array();
var servers=<?echo count($serwer);?>;
var ts3=<?echo $licz['ts3'];?>;
var vt=<?echo $licz['ventrilo'];?>;
var podsum=[];
</script>
</head>
<body>
<table style="margin:0; padding:0; margin-top: 10px; border-top: 2px solid #131313; border-bottom: 2px solid #66ff69; border-radius: 4px; -moz-border-radius: 4px; -webkit-border-radius: 4px; border: 2px double white" cellpadding="5" cellspacing="0" align="center" width="100%">
<?
$nie_licz=0;
foreach($serwer as $id => $i)
{
$ip=explode(':', $i['ip']);
if($i['on']){?>
<tr>
<td class="srodek" align="center"><img src="status/img/<?echo $i['game'];?>.png" border="0" title="<?echo $games[0][$i['game']];?>"/></td>
<td class="srodek" align="left"> <span class="srvid"><? if(count($cvars[0][$i['game']])){?><script>inf[<?echo $id;?>]="<font color='black' size='-3'><?if($i['online']){for($r=0;$r<count($cvars[0][$i['game']]);$r++){if(isset($i['cvars'][$r])){echo $cvars[0][$i['game']][$r][1];?>	<?echo $i['cvars'][$r];?> <br /><?}}?><?}else{echo 'Serwer jest tymczasowo wyłączony';}?></font>";</script><div class="pretty" id="pretty0-<?echo $id;?>" title="<font color='black' size='-3'><?if($i['online']){for($r=0;$r<count($cvars[0][$i['game']]);$r++){if(isset($i['cvars'][$r])){echo $cvars[0][$i['game']][$r][1];?>	<?echo $i['cvars'][$r];?> <br /><?}}?><?}else{echo 'Serwer jest tymczasowo wyłączony';}?></font>"><?}?>#<?echo $serwery+1; ?> <?if($i['new']){?><img src="status/img/new.gif"/><?}?></span><span class="srvname" id="<?echo $id?>name"><?echo $i['nazwa']; ?></span><?if($i['game']!='ts3'){?></div><?}?></td>
<td class="srodek" align="left"><span class="srvip"><span id="<?echo $id?>ip"><?echo $i['ip']; ?></span></span></td>
<td class="srodek" id="on1-<?echo $id?>" style="display:<?if(!$i['online']){?><?}else{?>none<?}?>" colspan="4" align="center"><span class="srvoff">Serwer jest wyłączony</span></td>
<?
if($i['game']=='ventrilo')
{
$gr=0;?>
<td id="on<?echo $id?>" style="display:<?if($i['online']){?>display<?}else{?>none<?}?>" class="srodek" align="center"><span id="<?echo $id?>list"><div class="pretty" style="font-size:10px;color:black" id="pretty1-<?echo $id?>" title="<sub><?if($i['online']){if(count($i['player'])==1 || !$i['player']){?>Brak graczy<?}else{ if(ae_detect_ie()) {?>Nick<?}else{?><table cellspacing='1' align='center'><tr align='center'><td align='center'><font color='black' size='-3'>Lp.</font></td><td align='center'><font color='black' size='-3'>Nick</font></td></tr><?} foreach($i['player'] as $player){ $gr++; $player['name']=htmlspecialchars($player['name']); $player['name']=strip_tags($player['name']); $player['name']=str_replace("-","−",$player['name']); if($player['admin']){$player['name']='<b>'.$player['name'].'</b>';} if(ae_detect_ie()) { echo $player['name'].' '; }else { echo '<tr align=center><td align=center><font color=\'black\' size=\'-3\'>'.$gr.'</font></td><td align=center><font color=\'black\' size=\'-3\'>'.$player['name'].'</font></td></tr>'; }}}if (!ae_detect_ie()) {?></table></font><?}}?></sub>"></span>
<span class="srvplayers"><div id="<?echo $id?>players"><?if($i['online']) { echo $i['players'].'</span><span class="srvslash">/</span><span class="srvplayers">'.$i['max']; }?></div></div></span></td>
<td id="on1-<?echo $id?>" style="display:<?if($i['online']){?>display<?}else{?>none<?}?>" class="srodek" align="center"><span class="srvnoinfo">Brak informacji</span></td>
<td id="on2-<?echo $id?>" style="display:<?if($i['online']){?>display<?}else{?>none<?}?>" class="srodek" align="center"><span class="srvpass"><div id="<?echo $id?>pass">Nie</div></span> </td>
<td id="on3-<?echo $id?>" style="display:<?if($i['online']){?>display<?}else{?>none<?}?>" class="srodek" align="center"> <a target="_blank" class="srvconnect" href="ventrilo://<?echo $i['ip'];?>/servername=<?echo $i['nazwa']?>">Połącz</a> </td>
<?}
else if($i['game']=='ts3')
{
$gr=0;?>
<td id="on<?echo $id?>" style="display:<?if($i['online']){?>display<?}else{?>none<?}?>" class="srodek" id="gracze" align="center"><span id="<?echo $id?>list"><div class="pretty" style="font-size:10px;color:black" id="pretty1-<?echo $id?>" title="<sub><?if($i['online']){if(count($i['player'])==1 || !$i['player']){?>Brak graczy<?}else{ if(ae_detect_ie()) {?>Nick<?}else{?><table cellspacing='1' align='center'><tr align='center'><td align='center'><font size='-3'>Lp.</font></td><td align='center'><font size='-3'>Nick</font></td></tr><?} foreach($i['player'] as $player){ $gr++; $player['client_nickname']=htmlspecialchars($player['client_nickname']); $player['client_nickname']=strip_tags($player['client_nickname']); $player['client_nickname']=str_replace("-","−",$player['client_nickname']); if(ae_detect_ie()) { echo $player['client_nickname'].' '; }else { echo '<tr align=center><td align=center><font size=\'-3\'>'.$gr.'</font></td><td align=center><font size=\'-3\'>'.$player['client_nickname'].'</font></td></tr>'; }}}if (!ae_detect_ie()) {?></table></font><?}}?></sub>"></span>
<span class="srvplayers"><div id="<?echo $id?>players"><?if($i['online']) { echo $i['players'].'</span><span class="srvslash">/</span><span class="srvplayers">'.$i['max']; }?></div></div></span></td>
<td id="on1-<?echo $id?>" style="display:<?if($i['online']){?>display<?}else{?>none<?}?>" class="srodek" align="center"><span class="srvnoinfo">Brak informacji</span></td>
<td id="on2-<?echo $id?>" style="display:<?if($i['online']){?>display<?}else{?>none<?}?>" class="srodek" align="center"><span class="srvpass"><div id="<?echo $id?>pass"><?if($i['online']){if($i['haslo']){echo 'Tak';}else{echo 'Nie';}};?></div></span> </td>
<td id="on3-<?echo $id?>" style="display:<?if($i['online']){?>display<?}else{?>none<?}?>" class="srodek" align="center"> <a target="_blank" class="srvconnect" href="ts3server://<?echo $ip[0];?>?port=<?echo $ip[1];?>">Połącz</a> </td>
<?}
else if($i['game']=='cs')
{
$gr=0;?>
<td id="on<?echo $id?>" style="display:<?if($i['online']){?>display<?}else{?>none<?}?>" class="srodek" align="center"><?if($i['game']!='mc'){?><span id="<?echo $id?>list"><div class="pretty" id="pretty1-<?echo $id?>" title="<font color='black' size='-3'><sub><?if($i['online']){if(!count($i['player'])){?>Brak graczy<?}else{ if(ae_detect_ie()) {?>Nick			Fragi <?}else{?><table cellspacing='1' align='center'><tr align='center'><td align='center'><font size='-3'>Lp.</font></td><td align='center'><font size='-3'>Nick</font></td><td align='center'><font size='-6'>Fragi</font></td></tr><?} foreach($i['player'] as $player){ $gr++; $player['name']=htmlspecialchars($player['name']);if(!isset($player['score'])) $player['score']=0; if($player['score']>4000000000) $player['score']=0; $player['name']=strip_tags($player['name']); $player['name']=str_replace("-","−",$player['name']); if(ae_detect_ie()) { echo $player['name'].'			'.$player['score'].' '; }else { echo '<tr align=center><td align=center><font size=\'-3\'>'.$gr.'</font></td><td align=center><font size=\'-3\'>'.$player['name'].'</font></td><td align=center><font size=\'-3\'>'.$player['score'].'</font></td></tr>'; }}}if (!ae_detect_ie()) {?></table></font><?}}?></sub>"></span><?}?>
<span class="srvplayers"><div id="<?echo $id?>players"><?if($i['online']){ echo $i['players'].'</span><span class="srvslash">/</span><span class="srvplayers">'.$i['max']; }?></div></div></span></td>
<td id="on1-<?echo $id?>" style="display:<?if($i['online']){?>display<?}else{?>none<?}?>" class="srodek" align="center"><span class="srvmap"><?if($i['game']=='cs'){?><span id="<?echo $id?>imap"><div class="pretty" id="pretty2-<?echo $id?>" title="<font color='black' size='-3'><?if(isset($i['nextmap'])){?>Następna mapa:	<?echo $i['nextmap'];?> <br /><?}if(isset($i['timeleft'])){?>Do zmiany mapy pozostało:	<?echo $i['timeleft'];}?> </font>"></span><?}if(isset($i['map'])){?><div id="<?echo $id?>map"><?php echo substr($i['map'], 0, 22);?></div><?}?></div></span> </td>
<td id="on3-<?echo $id?>" style="display:<?if($i['online']){?>display<?}else{?>none<?}?>" class="srodek" align="center"> <?if($i['game']!='mc'){?><a href="http://www.gametracker.com/server_info/188.165.21.245:27065/" target="_blank"><img src="https://cache.gametracker.com/server_info/188.165.21.245:27065/b_350_20_692108_381007_FFFFFF_000000.png" border="0" width="350" height="20" alt=""/></a><?}else{?>-<?}?> </td>
<td id="on3-<?echo $id?>" style="display:<?if($i['online']){?>display<?}else{?>none<?}?>" class="srodek" align="center"> <?if($i['game']!='mc'){?><a target="_blank" href="hlsw://193.33.177.136:52084"><img src="status/img/hltv.png"></a> <a target="_blank" href="http://www.gametracker.com/server_info/188.165.21.245:27065/"><img src="status/img/gt.png"></a> <a target="_blank" href="steam://connect/<?echo $i['ip'];?>"><img src="status/img/steam.png"></a><?}else{?>-<?}?> </td>
<?}
else if($i['game']=='fun')
{
$gr=0;?>
<td id="on<?echo $id?>" style="display:<?if($i['online']){?>display<?}else{?>none<?}?>" class="srodek" align="center"><?if($i['game']!='mc'){?><span id="<?echo $id?>list"><div class="pretty" id="pretty1-<?echo $id?>" title="<font color='black' size='-3'><sub><?if($i['online']){if(!count($i['player'])){?>Brak graczy<?}else{ if(ae_detect_ie()) {?>Nick			Fragi <?}else{?><table cellspacing='1' align='center'><tr align='center'><td align='center'><font size='-3'>Lp.</font></td><td align='center'><font size='-3'>Nick</font></td><td align='center'><font size='-6'>Fragi</font></td></tr><?} foreach($i['player'] as $player){ $gr++; $player['name']=htmlspecialchars($player['name']);if(!isset($player['score'])) $player['score']=0; if($player['score']>4000000000) $player['score']=0; $player['name']=strip_tags($player['name']); $player['name']=str_replace("-","−",$player['name']); if(ae_detect_ie()) { echo $player['name'].'			'.$player['score'].' '; }else { echo '<tr align=center><td align=center><font size=\'-3\'>'.$gr.'</font></td><td align=center><font size=\'-3\'>'.$player['name'].'</font></td><td align=center><font size=\'-3\'>'.$player['score'].'</font></td></tr>'; }}}if (!ae_detect_ie()) {?></table></font><?}}?></sub>"></span><?}?>
<span class="srvplayers"><div id="<?echo $id?>players"><?if($i['online']){ echo $i['players'].'</span><span class="srvslash">/</span><span class="srvplayers">'.$i['max']; }?></div></div></span></td>
<td id="on1-<?echo $id?>" style="display:<?if($i['online']){?>display<?}else{?>none<?}?>" class="srodek" align="center"><span class="srvmap"><?if($i['game']=='cs'){?><span id="<?echo $id?>imap"><div class="pretty" id="pretty2-<?echo $id?>" title="<font color='black' size='-3'><?if(isset($i['nextmap'])){?>Następna mapa:	<?echo $i['nextmap'];?> <br /><?}if(isset($i['timeleft'])){?>Do zmiany mapy pozostało:	<?echo $i['timeleft'];}?> </font>"></span><?}if(isset($i['map'])){?><div id="<?echo $id?>map"><?php echo substr($i['map'], 0, 22);?></div><?}?></div></span> </td>
<td id="on3-<?echo $id?>" style="display:<?if($i['online']){?>display<?}else{?>none<?}?>" class="srodek" align="center"> <?if($i['game']!='mc'){?><a href="http://www.gametracker.com/server_info/54.36.186.21:27015/" target="_blank"><img src="https://cache.gametracker.com/server_info/54.36.186.21:27015/b_350_20_692108_381007_FFFFFF_000000.png" border="0" width="350" height="20" alt=""/></a><?}else{?>-<?}?> </td>
<td id="on3-<?echo $id?>" style="display:<?if($i['online']){?>display<?}else{?>none<?}?>" class="srodek" align="center"> <?if($i['game']!='mc'){?><a target="_blank" href="hlsw://54.36.186.21:27020"><img src="status/img/hltv.png"></a> <a target="_blank" href="http://www.gametracker.com/server_info/54.36.186.21:27015/"><img src="status/img/gt.png"></a> <a target="_blank" href="steam://connect/<?echo $i['ip'];?>"><img src="status/img/steam.png"></a><?}else{?>-<?}?> </td>
<?}?>
<script>podsum[<?echo $id?>]=[<?if(!($i['game']=='ventrilo' && !$licz['ventrilo']) && !($i['game']=='ts3' && !$licz['ts3'])) {echo $i['players'],',',$i['max'];} else { echo '0,0'; }?>];</script>
</div>
<?}?>
</tr>
<?
$serwery++;
if(!($i['game']=='ventrilo' && !$licz['ventrilo']) && !($i['game']=='ts3' && !$licz['ts3']))
{
if($i['online'])
{
$gracze+=$i['players'];
$sloty+=$i['max'];
}
}
else
$nie_licz++;
}?>
<?if($podsumowanie){?>
<tr>
<td class="srodek" align="center">
<img src="status/img/info.png" border="0"></td>
<td colspan="8" class="srodek">
<span class="srvpodsum">
<script type="text/javascript">
function autoRefresh()
{
setTimeout('refPods()',3000);
for(i=0;i<<?echo $serwery?>;i++)
{
refreshServer(i);
if(document.getElementById('pretty0-'+i))
ref(inf[i],0,i);
}
}
function refPods()
{
var sloty = document.getElementById('sloty');
var gracze = document.getElementById('gracze');
var graczee=0;
var slotyy=0;
for(var i=0;i<servers;i++)
{
graczee+=podsum[i][0];
slotyy+=podsum[i][1]-podsum[i][0];
}
sloty.innerHTML = slotyy;
gracze.innerHTML = graczee;
}
setInterval(function(){autoRefresh()},<?echo $automatyczne_odswiezanie?>*1000);
setTimeout('autoRefresh()',1000);
</script>
Aktualnie na naszych <i><u><b><?echo $serwery-$nie_licz;?></b></u></i> serwerach gra <i><u><b><span id="gracze"><?php echo $gracze;?></div></b></u></i> graczy, i jest <i><u><b><span id="sloty"><?php echo $sloty-$gracze;?></div></b></i></u> wolnych slotów.</span>
</td>
</tr>
<?}?>
</table>
</body>
<?php ob_end_flush(); ?>
func.php
<?
for($i=0;$i<count($serwers);$i++)
{
if($serwers[$i]['on'])
{
$serwer[$i]['ip']=$serwers[$i]['ip'];
$serwer[$i]['on']=$serwers[$i]['on'];
$serwer[$i]['nazwa']=$serwers[$i]['nazwa'];
$serwer[$i]['game']=$serwers[$i]['game'];
if($serwer[$i]['game']!="mc")
$serwer[$i]['hltv']=$serwers[$i]['hltv'];
else
$serwer[$i]['hltv']="";
$serwer[$i]['new']=$serwers[$i]['new'];
$serwer[$i]['offline']=$serwers[$i]['offline'];
$ff = explode(":", $serwer[$i]['ip']);
$ip=$ff[0];
$port='';
if(isset($ff[1]))
$port=$ff[1];
switch($serwers[$i]['game'])
{
case 'cod2':
case 'cod4':
case 'tf2':
case 'csgo':
case 'cssource':
case 'cs':
if(!$serwers[$i]['offline'])
{
if(!$serwer[$i] = cache::factory() -> load('serwer'.$i.'i'))
{
$serwer[$i]['ip']=$serwers[$i]['ip'];
$serwer[$i]['on']=$serwers[$i]['on'];
$serwer[$i]['nazwa']=$serwers[$i]['nazwa'];
$serwer[$i]['game']=$serwers[$i]['game'];
$serwer[$i]['hltv']=$serwers[$i]['hltv'];
$serwer[$i]['new']=$serwers[$i]['new'];
$serwer[$i]['offline']=$serwers[$i]['offline'];
$gq= new GameQ;
$gq->addServer($i,array($serwer[$i]['game'],$ip,$port));
$gq->setOption('timeout',100);
$gq->setFilter('normalise');
$gq->setFilter('sortplayers', 'gq_score',false);
$info = $gq->requestData();
if($info[$i]['gq_online']!=1)
{
$serwer[$i]['status']="<img src=\"status/img/offline.png\" border=\"0\" alt=\"OFFLINE\" />";
$serwer[$i]['online']=false;
$serwer[$i]['map']='';
$serwer[$i]['nazwa']=$serwers[$i]['nazwa'];
}
else
{
$serwer[$i]['status']="<img src=\"status/img/status.png\" border=\"0\" alt=\"ONLINE\" />";
$serwer[$i]['online']=true;
$serwer[$i]['map']=$info[$i]['gq_mapname'];
$serwer[$i]['players']=$info[$i]['gq_numplayers'];
$serwer[$i]['max']=$info[$i]['gq_maxplayers'];
$serwer[$i]['haslo']=$info[$i]['gq_password'];
if($nazwa_serwera==1)
$serwer[$i]['nazwa']=$info[$i]['hostname'];
else
$serwer[$i]['nazwa']=$serwers[$i]['nazwa'];
if(isset($info[$i]['amx_nextmap']))
$serwer[$i]['nextmap']=$info[$i]['amx_nextmap'];
if(isset($info[$i]['amx_timeleft']))
$serwer[$i]['timeleft']=$info[$i]['amx_timeleft'];
if(!isset($serwer[$i]['timeleft'])) $serwer[$i]['timeleft']="Brak czasu";
if(!isset($serwer[$i]['nextmap'])) $serwer[$i]['nextmap']="Jeszcze nie wybrano";
for($e=0;$e<count($cvars[0][$serwer[$i]['game']]);$e++)
{
if(isset($info[$i][$cvars[0][$serwer[$i]['game']][$e][0]])) $serwer[$i]['cvars'][$e]=$info[$i][$cvars[0][$serwer[$i]['game']][$e][0]];
else $serwer[$i]['cvars'][$e]="Brak";
if($serwer[$i]['cvars'][$e]==1 && strlen($serwer[$i]['cvars'][$e])<2) $serwer[$i]['cvars'][$e]="Tak";
else if($serwer[$i]['cvars'][$e]==0 && strlen($serwer[$i]['cvars'][$e])<2) $serwer[$i]['cvars'][$e]="Nie";
}
if($serwer[$i]['players']>0)
$serwer[$i]['player']=$info[$i]['players'];
else
$serwer[$i]['player']=array();
}
cache::factory() -> save( 'serwer'.$i.'i', $serwer[$i], $main['cache_time']);
}
else
{
$serwer[$i]['on']=$serwers[$i]['on'];
if(!isset($serwer[$i]['nazwa']) || $serwer[$i]['nazwa']=='')
$serwer[$i]['nazwa']=$serwers[$i]['nazwa'];
$serwer[$i]['ip']=$serwers[$i]['ip'];
if(!isset($serwer[$i]['map']) || $serwer[$i]['map'] == '' || $serwer[$i]['online']!=true)
{
$serwer[$i]['status']="<img src=\"status/img/offline.png\" border=\"0\" alt=\"OFFLINE\" />";
$serwer[$i]['online']=false;
$serwer[$i]['map']='';
}
else
{
$serwer[$i]['status']="<img src=\"status/img/status.png\" border=\"0\" alt=\"ONLINE\" />";
$serwer[$i]['online']=true;
}
}
}
else
{
$serwer[$i]['map']='';
$serwer[$i]['status']="<img src=\"status/img/offline.png\" border=\"0\" alt=\"OFFLINE\" />";
$serwer[$i]['online']=false;
}
break;
break;
break;
break;
break;
break;
case 'ventrilo':
if(!$serwer[$i] = cache::factory() -> load('serwer'.$i.'i'))
{
$serwer[$i]['ip']=$serwers[$i]['ip'];
$serwer[$i]['on']=$serwers[$i]['on'];
$serwer[$i]['nazwa']=$serwers[$i]['nazwa'];
$serwer[$i]['game']=$serwers[$i]['game'];
$serwer[$i]['new']=$serwers[$i]['new'];
$serwer[$i]['offline']=$serwers[$i]['offline'];
$serwer[$i]['hltv']=$serwers[$i]['hltv'];
$gq= new GameQ;
$gq->addServer($i,array($serwer[$i]['game'],$ip,$port));
$gq->setOption('timeout',80);
$info = $gq->requestData();
if (isset($info[$i]))
{
$serwer[$i]['online']=true;
$serwer[$i]['status']= "<img src=\"status/img/status.png\" border=\"0\" alt=\"ONLINE\" />";
$serwer[$i]['players']=0;
$serwer[$i]['max']=0;
if(isset($info[$i]['clientcount']))
$serwer[$i]['players']=$info[$i]['clientcount'];
if(isset($info[$i]['maxclients']))
$serwer[$i]['max']=$info[$i]['maxclients'];
if($serwer[$i]['players']>0)
$serwer[$i]['player']=$info[$i]['players'];
else
$serwer[$i]['player']=array();
for($e=0;$e<count($cvars[0][$serwer[$i]['game']]);$e++)
{
if(isset($info[$i][$cvars[0][$serwer[$i]['game']][$e][0]])) $serwer[$i]['cvars'][$e]=$info[$i][$cvars[0][$serwer[$i]['game']][$e][0]];
else $serwer[$i]['cvars'][$e]="Brak";
if($serwer[$i]['cvars'][$e]==1 && strlen($serwer[$i]['cvars'][$e])<2) $serwer[$i]['cvars'][$e]="Tak";
else if($serwer[$i]['cvars'][$e]==0 && strlen($serwer[$i]['cvars'][$e])<2) $serwer[$i]['cvars'][$e]="Nie";
}
}
else
{
$serwer[$i]['online']=false;
$serwer[$i]['status']= "<img src=\"status/img/offline.png\" border=\"0\" alt=\"OFFLINE\" />";
}
cache::factory() -> save( 'serwer'.$i.'i', $serwer[$i], $main['cache_time']);
}
else
{
$serwer[$i]['on']=$serwers[$i]['on'];
if(!isset($serwer[$i]['nazwa']) || $serwer[$i]['nazwa']=='')
$serwer[$i]['nazwa']=$serwers[$i]['nazwa'];
$serwer[$i]['ip']=$serwers[$i]['ip'];
if($serwer[$i]['online']!=true)
{
$serwer[$i]['status']="<img src=\"status/img/offline.png\" border=\"0\" alt=\"OFFLINE\" />";
$serwer[$i]['online']=false;
$serwer[$i]['map']='';
}
else
{
$serwer[$i]['status']="<img src=\"status/img/status.png\" border=\"0\" alt=\"ONLINE\" />";
$serwer[$i]['online']=true;
}
}
break;
case 'ts3':
if(!$serwer[$i] = cache::factory() -> load('serwer'.$i.'i'))
{
$serwer[$i]['ip']=$serwers[$i]['ip'];
$serwer[$i]['on']=$serwers[$i]['on'];
$serwer[$i]['nazwa']=$serwers[$i]['nazwa'];
$serwer[$i]['game']=$serwers[$i]['game'];
$serwer[$i]['new']=$serwers[$i]['new'];
$serwer[$i]['offline']=$serwers[$i]['offline'];
$serwer[$i]['hltv']=$serwers[$i]['hltv'];
$ts3 = new ts3admin($ip, 10011);
if($ts3->getElement('success', $ts3->connect()))
{
$ts3->selectServer($port);
$infots3=$ts3->serverInfo();
$clients=$ts3->clientList();
$serwer[$i]['online']=true;
$serwer[$i]['status']= "<img src=\"status/img/status.png\" border=\"0\" alt=\"ONLINE\" />";
$serwer[$i]['players']=$infots3['data']['virtualserver_clientsonline']-1;
$serwer[$i]['max']=$infots3['data']['virtualserver_maxclients'];
$serwer[$i]['haslo']=$infots3['data']['virtualserver_password'];
$serwer[$i]['player']=$clients['data'];
for($e=0;$e<count($cvars[0][$serwer[$i]['game']]);$e++)
{
if(isset($infots3['data'][$cvars[0][$serwer[$i]['game']][$e][0]])) $serwer[$i]['cvars'][$e]=$infots3['data'][$cvars[0][$serwer[$i]['game']][$e][0]];
else $serwer[$i]['cvars'][$e]="Brak";
if($serwer[$i]['cvars'][$e]==1 && strlen($serwer[$i]['cvars'][$e])<2) $serwer[$i]['cvars'][$e]="Tak";
else if($serwer[$i]['cvars'][$e]==0 && strlen($serwer[$i]['cvars'][$e])<2) $serwer[$i]['cvars'][$e]="Nie";
}
}
else
{
$serwer[$i]['online']=false;
$serwer[$i]['status']= "<img src=\"status/img/offline.png\" border=\"0\" alt=\"OFFLINE\" />";
}
cache::factory() -> save( 'serwer'.$i.'i', $serwer[$i], $main['cache_time']);
}
else
{
$serwer[$i]['on']=$serwers[$i]['on'];
if(!isset($serwer[$i]['nazwa']) || $serwer[$i]['nazwa']=='')
$serwer[$i]['nazwa']=$serwers[$i]['nazwa'];
$serwer[$i]['ip']=$serwers[$i]['ip'];
if($serwer[$i]['online']!=true)
{
$serwer[$i]['status']="<img src=\"status/img/offline.png\" border=\"0\" alt=\"OFFLINE\" />";
$serwer[$i]['online']=false;
$serwer[$i]['map']='';
}
else
{
$serwer[$i]['status']="<img src=\"status/img/status.png\" border=\"0\" alt=\"ONLINE\" />";
$serwer[$i]['online']=true;
}
}
break;
}
}
}
?>
config.php
<?php
require_once('inc/GameQ.php');
include_once("inc/ts3admin.class.php");
require 'inc/class.cache.php';
$serwer=array();
$main = array();
$main['cache_time']=30;
$main['dateformat'] = "Y-M-d H:i:s";
$automatyczne_odswiezanie=30; // Co ile sekund tabela się odświeża. 0 - wyłącza odświeżanie.
$licz['ts3']=1; // Czy ma liczyć sloty z serwerów TS3 w podsumowaniu na końcu tabeli 0-nie 1-tak
$licz['ventrilo']=0; // Czy ma liczyć sloty z serwerów Ventrilo w podsumowaniu na końcu tabeli 0-nie 1-tak
$podsumowanie=1; // Czy pokazywać podsumowanie: Aktualnie na naszych 3 serwerach gra... 0-nie 1-tak
$nazwa_serwera=0; // Pobierać nazwę serwera przy połączeniu czy używać tej wpisanej niżej. (tylko w przypadku serwerów cs)
// 0 - Stała nazwa serwera pobierana z tego pliku
// 1 - Nazwa serwera pobierana przy połączeniu z serwerem.
/*W pole game wpisujemy skrót od gry. Dostępne gry:
ts3 - Team Speak 3
cs - Counter Strike 1.6
ventrilo - Ventrilo
tf2 - Team Fortress 2
csgo - Counter Strike: Global Offensive
cod2 - Call of Duty 2
cod4 - Call of Duty 4
cssource - Counter Strike: Source
*/
$cvars[]= array(
'cs'=>array(0=>array(0=>'amxmodx_version',1=>'Wersja amxx:'),1=>array(0=>'amxbans_version',1=>'Wersja amxbans:'),2=>array(0=>'mp_timelimit',1=>'Czas mapy:')),
'fun'=>array(0=>array(0=>'amxmodx_version',1=>'Wersja amxx:'),1=>array(0=>'amxbans_version',1=>'Wersja amxbans:'),2=>array(0=>'mp_timelimit',1=>'Czas mapy:')),
'csgo'=>array(0=>array(0=>'sourcemod_version',1=>'Wersja SourceMod:'),1=>array(0=>'mp_maxrounds',1=>'Liczba rund:'),2=>array(0=>'deathmatch',1=>'DeathMatch:')),
'cssource'=>array(0=>array(0=>'sourcemod_version',1=>'Wersja SourceMod:'),1=>array(0=>'mp_maxrounds',1=>'Liczba rund:'),2=>array(0=>'deathmatch',1=>'DeathMatch:')),
'tf2'=>array(0=>array(0=>'mp_allowNPCs',1=>'NPC Włączone:'),1=>array(0=>'mp_timelimit',1=>'Czas mapy:'),2=>array(0=>'deathmatch',1=>'DeathMatch:')),
'ventrilo'=>array(0=>array(0=>'version',1=>'Wersja:'),1=>array(0=>'channelcount',1=>'Liczba kanałów:'),2=>array(0=>'uptime',1=>'Czas online:')),
'ts3'=>array(0=>array(0=>'virtualserver_version',1=>'Wersja:'),1=>array(0=>'virtualserver_channelsonline',1=>'Liczba kanałów:'),2=>array(0=>'virtualserver_uptime',1=>'Czas online:')),
'cod2'=>array(0=>array(0=>'g_gametype',1=>'Typ gry:'),1=>array(0=>'shortversion',1=>'Wersja:'),2=>array(0=>'scr_friendlyfire',1=>'FriendlyFire:')),
'cod4'=>array(0=>array(0=>'g_gametype',1=>'Typ gry:'),1=>array(0=>'shortversion',1=>'Wersja:'),2=>array(0=>'_Mod',1=>'Mod:')),
);
$games[]=array(
'cs'=>'Counter Strike 1.6',
'csgo'=>'Counter Strike: Global Offensive',
'cssource'=>'Counter Strike: Source',
'tf2'=>'Team Fortress 2',
'ventrilo'=>'Ventrilo',
'ts3'=>'Team Speak 3',
'cod2'=>'Call of Duty 2',
'cod4'=>'Call of Duty 4',
);
$serwers[]=array(
'nazwa'=>'BF2 [ Cs-Botownia.PL ]',
'ip'=>'188.165.21.245:27065',
'game'=>'cs',
'hltv'=>'',
'on'=>1,
'new'=>0,
'offline'=>0);
$serwers[]=array(
'nazwa'=>'4Fun [ Cs-Botownia.PL ]',
'ip'=>'54.36.186.21:27015',
'game'=>'cs',
'hltv'=>'',
'on'=>1,
'new'=>1,
'offline'=>0);
function logErrors($title, $content)
{
if (!file_exists('log'))
mkdir('log');
if(strstr($content,'(Connection timed out)'))
return false;
$plik = "log/".date('dmy').".log";
$open = fopen( $plik, "a");
flock( $open, 2);
fputs( $open, "\n$title\n$content\n");
flock( $open, 1);
fclose( $open );
}
function error($errCode, $errString, $errFile, $errLine)
{
if(!defined('E_STRICT'))
define('E_STRICT', 2048);
$user = $_SERVER['REMOTE_ADDR'];
$uri = $_SERVER['REQUEST_URI'];
$content = "[".date("d.m.Y h:i:s")."]\n";
$content .= "Błąd skryptu '$errFile' w linii $errLine ";
$content .= "wywołany żądaniem '$uri' przez użytkownika $user ( ";
$content .= @gethostbyaddr($user);
$content .= " )\n$errString";
switch($errCode)
{
case E_USER_ERROR:
case E_ERROR:
case E_COMPILE_ERROR:
case E_CORE_ERROR:
echo logErrors("Błąd krytyczny", $content);
exit(1);
break;
case E_USER_WARNING:
case E_CORE_WARNING:
case E_COMPILE_WARNING:
case E_WARNING:
echo logErrors("Ostrzeżenie", $content);
break;
case E_STRICT:
case E_NOTICE:
case E_USER_NOTICE:
case E_PARSE;
echo logErrors("Uwaga", $content);
break;
default:
echo logErrors("Nieznany błąd - $errCode", $content);
break;
}
return true;
}
set_error_handler('error');
function ae_detect_ie()
{
if (isset($_SERVER['HTTP_USER_AGENT']) && (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== false))
return true;
else
return false;
}
function fetch_server_info($ip, $port) {
$socket = @fsockopen($ip, $port, $errno, $errstr, 0.5);
if ($socket === false) {
return false;
}
fwrite($socket, "\xfe");
$data = fread($socket, 256);
if (substr($data, 0, 1) != "\xff") {
return false;
}
$data = explode('§', mb_convert_encoding(substr($data, 3), 'UTF-16', 'UCS-2'));
return array(
'motd' => $data[0],
'players' => intval($data[1]),
'max_players' => intval($data[2]),
);
var_dump($data);
}
?>
odswiez.php
<?
require 'config.php';
$id=$_GET['id'];
if(!isset($serwers[$id]))
{
echo 'ERROR';
exit(0);
}
if($serwers[$id]['on'])
{
$serwer['ip']=$serwers[$id]['ip'];
$serwer['on']=$serwers[$id]['on'];
$serwer['nazwa']=$serwers[$id]['nazwa'];
$serwer['game']=$serwers[$id]['game'];
$serwer['hltv']=$serwers[$id]['hltv'];
$serwer['new']=$serwers[$id]['new'];
$serwer['offline']=$serwers[$id]['offline'];
$serwer['nextmap']=0;
$serwer['timeleft']=0;
$ff = explode(":", $serwer['ip']);
$ip=$ff[0];
$port='';
if(isset($ff[1]))
$port=$ff[1];
switch($serwers[$id]['game'])
{
case 'cod2':
case 'cod4':
case 'tf2':
case 'csgo':
case 'cssource':
case 'cs':
if(!$serwers[$id]['offline'])
{
if(!$serwer = cache::factory() -> load('serwer'.$id.'i'.'i'))
{
$serwer['ip']=$serwers[$id]['ip'];
$serwer['on']=$serwers[$id]['on'];
$serwer['nazwa']=$serwers[$id]['nazwa'];
$serwer['game']=$serwers[$id]['game'];
$serwer['hltv']=$serwers[$id]['hltv'];
$serwer['new']=$serwers[$id]['new'];
$serwer['offline']=$serwers[$id]['offline'];
$gq= new GameQ;
$gq->addServer($id,array($serwer['game'],$ip,$port));
$gq->setOption('timeout',500);
$gq->setFilter('normalise');
$gq->setFilter('sortplayers', 'gq_score',false);
$info = $gq->requestData();
if($info[$id]['gq_online']!=1)
{
$serwer['status']="<img src=\"status/img/offline.png\" border=\"0\" alt=\"OFFLINE\" />";
$serwer['online']=false;
$serwer['map']='';
$serwer['nazwa']=$serwers[$id]['nazwa'];
}
else
{
$serwer['status']="<img src=\"status/img/status.png\" border=\"0\" alt=\"ONLINE\" />";
$serwer['online']=true;
$serwer['map']=$info[$id]['gq_mapname'];
$serwer['players']=$info[$id]['gq_numplayers'];
$serwer['max']=$info[$id]['gq_maxplayers'];
$serwer['haslo']=$info[$id]['gq_password'];
if($nazwa_serwera==1)
$serwer['nazwa']=$info[$id]['hostname'];
else
$serwer['nazwa']=$serwers[$id]['nazwa'];
if(isset($info[$id]['amx_nextmap']))
$serwer['nextmap']=$info[$id]['amx_nextmap'];
if(isset($info[$id]['amx_timeleft']))
$serwer['timeleft']=$info[$id]['amx_timeleft'];
if(!isset($serwer['timeleft'])) $serwer['timeleft']="Brak czasu";
if(!isset($serwer['nextmap'])) $serwer['nextmap']="Jeszcze nie wybrano";
for($e=0;$e<count($cvars[0][$serwer['game']]);$e++)
{
if(isset($info[$id][$cvars[0][$serwer['game']][$e][0]])) $serwer['cvars'][$e]=$info[$id][$cvars[0][$serwer['game']][$e][0]];
else $serwer['cvars'][$e]="Brak";
if($serwer['cvars'][$e]==1 && strlen($serwer['cvars'][$e])<2) $serwer['cvars'][$e]="Tak";
else if($serwer['cvars'][$e]==0 && strlen($serwer['cvars'][$e])<2) $serwer['cvars'][$e]="Nie";
}
if($serwer['players']>0)
$serwer['player']=$info[$id]['players'];
else
$serwer['player']=array();
}
cache::factory() -> save( 'serwer'.$id.'i', $serwer, $main['cache_time']);
}
else
{
$serwer['on']=$serwers[$id]['on'];
if(!isset($serwer['nazwa']) || $serwer['nazwa']=='')
$serwer['nazwa']=$serwers[$id]['nazwa'];
$serwer['ip']=$serwers[$id]['ip'];
if(!isset($serwer['map']) || $serwer['map'] == '' || $serwer['online']!=true)
{
$serwer['status']="<img src=\"status/img/offline.png\" border=\"0\" alt=\"OFFLINE\" />";
$serwer['online']=false;
$serwer['map']='';
}
else
{
$serwer['status']="<img src=\"status/img/status.png\" border=\"0\" alt=\"ONLINE\" />";
$serwer['online']=true;
}
}
}
else
{
$serwer['map']='';
$serwer['status']="<img src=\"status/img/offline.png\" border=\"0\" alt=\"OFFLINE\" />";
$serwer['online']=false;
}
break;
break;
break;
break;
break;
break;
case 'ventrilo':
if(!$serwer = cache::factory() -> load('serwer'.$id.'i'))
{
$serwer['ip']=$serwers[$id]['ip'];
$serwer['on']=$serwers[$id]['on'];
$serwer['nazwa']=$serwers[$id]['nazwa'];
$serwer['game']=$serwers[$id]['game'];
$serwer['new']=$serwers[$id]['new'];
$serwer['offline']=$serwers[$id]['offline'];
$serwer['hltv']=$serwers[$id]['hltv'];
$gq= new GameQ;
$gq->addServer($id,array($serwers[$id]['game'],$ip,$port));
$info = $gq->requestData();
if (isset($info[$id]))
{
$serwer['online']=true;
$serwer['status']= "<img src=\"status/img/status.png\" border=\"0\" alt=\"ONLINE\" />";
$serwer['players']=0;
$serwer['max']=0;
if(isset($info[$id]['clientcount']))
$serwer['players']=$info[$id]['clientcount'];
if(isset($info[$id]['maxclients']))
$serwer['max']=$info[$id]['maxclients'];
if($serwer['players'])
$serwer['player']=$info[$id]['players'];
else
$serwer['player']=array();
for($e=0;$e<count($cvars[0][$serwer['game']]);$e++)
{
if(isset($info[$id][$cvars[0][$serwer['game']][$e][0]])) $serwer['cvars'][$e]=$info[$id][$cvars[0][$serwer['game']][$e][0]];
else $serwer['cvars'][$e]="Brak";
if($serwer['cvars'][$e]==1 && strlen($serwer['cvars'][$e])<2) $serwer['cvars'][$e]="Tak";
else if($serwer['cvars'][$e]==0 && strlen($serwer['cvars'][$e])<2) $serwer['cvars'][$e]="Nie";
}
}
else
{
$serwer['online']=false;
$serwer['status']= "<img src=\"status/img/offline.png\" border=\"0\" alt=\"OFFLINE\" />";
}
cache::factory() -> save( 'serwer'.$id.'i', $serwer, $main['cache_time']);
}
else
{
$serwer['on']=$serwers[$id]['on'];
if(!isset($serwer['nazwa']) || $serwer['nazwa']=='')
$serwer['nazwa']=$serwers[$id]['nazwa'];
$serwer['ip']=$serwers[$id]['ip'];
if($serwer['online']!=true)
{
$serwer['status']="<img src=\"status/img/offline.png\" border=\"0\" alt=\"OFFLINE\" />";
$serwer['online']=false;
$serwer['map']='';
}
else
{
$serwer['status']="<img src=\"status/img/status.png\" border=\"0\" alt=\"ONLINE\" />";
$serwer['online']=true;
}
}
break;
case 'ts3':
if(!$serwer = cache::factory() -> load('serwer'.$id.'i'))
{
$serwer['ip']=$serwers[$id]['ip'];
$serwer['on']=$serwers[$id]['on'];
$serwer['nazwa']=$serwers[$id]['nazwa'];
$serwer['game']=$serwers[$id]['game'];
$serwer['new']=$serwers[$id]['new'];
$serwer['offline']=$serwers[$id]['offline'];
$serwer['hltv']=$serwers[$id]['hltv'];
$ts3 = new ts3admin($ip, 10011);
if($ts3->getElement('success', $ts3->connect()))
{
$ts3->selectServer($port);
$infots3=$ts3->serverInfo();
$clients=$ts3->clientList();
$serwer['online']=true;
$serwer['status']= "<img src=\"status/img/status.png\" border=\"0\" alt=\"ONLINE\" />";
$serwer['players']=$infots3['data']['virtualserver_clientsonline']-1;
$serwer['max']=$infots3['data']['virtualserver_maxclients'];
$serwer['haslo']=$infots3['data']['virtualserver_password'];
$serwer['player']=$clients['data'];
for($e=0;$e<count($cvars[0][$serwer['game']]);$e++)
{
if(isset($infots3['data'][$cvars[0][$serwer['game']][$e][0]])) $serwer['cvars'][$e]=$infots3['data'][$cvars[0][$serwer['game']][$e][0]];
else $serwer['cvars'][$e]="Brak";
if($serwer['cvars'][$e]==1 && strlen($serwer['cvars'][$e])<2) $serwer['cvars'][$e]="Tak";
else if($serwer['cvars'][$e]==0 && strlen($serwer['cvars'][$e])<2) $serwer['cvars'][$e]="Nie";
}
}
else
{
$serwer['online']=false;
$serwer['status']= "<img src=\"status/img/offline.png\" border=\"0\" alt=\"OFFLINE\" />";
}
cache::factory() -> save( 'serwer'.$id.'i', $serwer, $main['cache_time']);
}
else
{
$serwer['on']=$serwers[$id]['on'];
if(!isset($serwer['nazwa']) || $serwer['nazwa']=='')
$serwer['nazwa']=$serwers[$id]['nazwa'];
$serwer['ip']=$serwers[$id]['ip'];
if($serwer['online']!=true)
{
$serwer['status']="<img src=\"status/img/offline.png\" border=\"0\" alt=\"OFFLINE\" />";
$serwer['online']=false;
$serwer['map']='';
}
else
{
$serwer['status']="<img src=\"status/img/status.png\" border=\"0\" alt=\"ONLINE\" />";
$serwer['online']=true;
}
}
break;
}
}
echo $serwers[$id]['on'].'#';
if($serwers[$id]['on'])
{
echo $serwer['online'].'#';
echo $serwer['status'].'#';
if($serwer['online'])
{
echo $serwer['players'].'#';
echo $serwer['max'].'#';
echo $serwer['game'].'#';
if($serwer['game']=="cs" || $serwer['game']=="csgo" || $serwer['game']=="tf2" || $serwer['game']=='mc')
echo $serwer['map'].'#';
else
echo '#';
if(!isset($serwer['nextmap'])) $serwer['nextmap']=0;
if(!isset($serwer['timeleft'])) $serwer['timeleft']=0;
echo $serwer['nextmap'].'#';
echo $serwer['timeleft'].'#';
if(!isset($serwer['haslo']))
$serwer['haslo']=0;
echo $serwer['haslo'].'#';
echo $serwer['nazwa'].'#';
echo $serwer['ip'].'#';
if($serwer['players']>0)
{
foreach($serwer['player'] as $player)
{
if($serwer['game']=="cs" || $serwer['game']=="tf2" || $serwer['game']=="csgo" || $serwer['game']=="cssource")
{
$player['name']=preg_replace("[\x23]"," ",$player['name']);
$player['name']=preg_replace("[\x40]","a",$player['name']);
str_replace("-","−",$player['name']);
if(!isset($player['score'])) $player['score']=0;
echo strip_tags(htmlspecialchars($player['name'])).'@'.$player['score'].'%';
}
else if($serwer['game']=="cod2" || $serwer['game']=="cod4")
{
$player['nick']=preg_replace("[\x23]"," ",$player['nick']);
$player['nick']=preg_replace("[\x40]","a",$player['nick']);
str_replace("-","−",$player['nick']);
if(!isset($player['frags'])) $player['frags']=0;
echo strip_tags(htmlspecialchars($player['nick'])).'@'.$player['frags'].'%';
}
else if($serwer['game']=="ts3")
{
if(strstr($player['client_nickname'],"Unknown from")!==False)
continue;
$player['client_nickname']=preg_replace("[\x23]"," ",$player['client_nickname']);
str_replace("-","−",$player['client_nickname']);
echo strip_tags(htmlspecialchars($player['client_nickname'])).'%';
}
else if($serwer['game']=="ventrilo")
{
$player['name']=preg_replace("[\x23]"," ",$player['name']);
str_replace("-","−",$player['name']);
$player['name']=strip_tags(htmlspecialchars($player['name']));
if($player['admin']) $player['name']='<b>'.$player['name'].'</b>';
echo $player['name'].'%';
}
}
}
}
}
?>[size=4]
[/size]
Użytkownik mars edytował ten post 20.01.2019 15:15


Dodatki SourceMod













