![]() |
Для удобства мониторинга вашего сервера выведем краткую статистику на сайте. Для этого нужно: 1. Изменить адрес вашего сервера 2. Изменить путь, где хранятся картинки карт для предпросмотра. В итоге должно получится что-то на подобии картинки слева. Теперь код самого скрипта: |
<?php $server="192.168.0.3"; $qw=chr(32); $fp = fsockopen ("udp://".$server,"27015"); if (!$fp) { echo "ERROR: $errno - $errstr<br>\n"; } else { fwrite($fp,"\xFF\xFF\xFF\xFF\x54\x53\x6F\x75\x72\x63\x65\x20\x45\x6E\x67\x69\x6E\x65\x20\x51\x75\x65\x72\x79\x00".chr(10)); $st=fread($fp,1); $r=socket_get_status($fp); $r=$r["unread_bytes"]; $st.=fread($fp,$r); fclose($fp); $st=substr($st,5); $address=SubStr($st,0,StrPos($st,chr(0))); $address=str_replace(chr(0),"|",$address); $st=SubStr($st,StrPos($st,chr(0))+1); $name=SubStr($st,0,StrPos($st,chr(0))); $st=SubStr($st,StrPos($st,chr(0))+1); $map=SubStr($st,0,StrPos($st,chr(0))); $st=SubStr($st,StrPos($st,chr(0))+1); $st=SubStr($st,StrPos($st,chr(0))+1); $st=SubStr($st,StrPos($st,chr(0))+1); $current=ord(SubStr($st,0,1)); $max=ord(SubStr($st,1,1)); } $show_map="<img src='http://192.168.0.3/maps/".$name.".jpg' width='170' height='120'>"; echo " <br> <table border='0' style='border-style:dotted '> <tr> <td style='background-color:#004080' colspan='2'><font face='Tahoma' color='#FFFFFF' size='1'><b><center>$map</center></b></font></td> </tr> <tr> <td colspan='2'>$show_map</td> </tr> <tr> <td style='background-color:#004080' colspan='2'><font face='Tahoma' color='#FFFFFF' size='1'><b><center>Карта: $name</center></b></font></td> </tr> <tr> <td colspan='2'><font face='Tahoma' color='#004080' size='1'><center><b>IP-адрес: 62.182.89.114</b></center></font></td> </tr> <tr> <td><font face='Tahoma' color='#004080' size='1'><center>Игроков: $current</center></font></td> <td><font face='Tahoma' color='#004080' size='1' style='border:1px; border-bottom: 1px dotted #bdbdbd'><center>Макс: $max</center></font></td> </tr> </table> "; ?>
<?php $server="192.168.0.3"; $qw=chr(32); $fp = fsockopen ("udp://".$server,"27015"); if (!$fp) { echo "ERROR: $errno - $errstr<br>\n"; } else { fwrite($fp,"\xFF\xFF\xFF\xFF\x54\x53\x6F\x75\x72\x63\x65\x20\x45\x6E\x67\x69\x6E\x65\x20\x51\x75\x65\x72\x79\x00".chr(10)); $st=fread($fp,1); $r=socket_get_status($fp); $r=$r["unread_bytes"]; $st.=fread($fp,$r); fclose($fp); $st=substr($st,5); $address=SubStr($st,0,StrPos($st,chr(0))); $address=str_replace(chr(0),"|",$address); $st=SubStr($st,StrPos($st,chr(0))+1); $name=SubStr($st,0,StrPos($st,chr(0))); $st=SubStr($st,StrPos($st,chr(0))+1); $map=SubStr($st,0,StrPos($st,chr(0))); $st=SubStr($st,StrPos($st,chr(0))+1); $st=SubStr($st,StrPos($st,chr(0))+1); $st=SubStr($st,StrPos($st,chr(0))+1); $current=ord(SubStr($st,0,1)); $max=ord(SubStr($st,1,1)); } echo "$name Игроков: $current"; ?>