Нашел в просторах интернета скрипт на мониторинг серверов... И там есть такая, загадочная строчка... PHP: <?php fwrite($fp,"\xFF\xFF\xFF\xFFTSource Engine Query\x00"); ?> Кто-небудь может обьяснить ее значение? Мне например нужно вывести, ранковую таблицу, что нужно писать? Пытаюсь что-то дописать/поменять, браузер грузит страницу с минуту, в итоге ничего не отображает.
PHP: <?php $port='27016'; $qw=chr(32); $fp = fsockopen ("udp://".$server2ip,$port); if (!$fp) { echo "ERROR: $errno - $errstr<br>\n"; } else { fwrite($fp,"\xFF\xFF\xFF\xFFTSource Engine Query\x00"); $st=fread($fp,1); if (!$st) { echo("<b>Сервер отключен</b>"); $address=$server2ip.$port; $max="0"; $current="0"; $name="Unknown"; $map="unknownmap"; } else { $r=socket_get_status($fp); $r=$r["unread_bytes"]; $st.=fread($fp,$r); $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)); }; }; fclose($fp); $fp = fsockopen ("udp://".$server2ip,$port); if (!$fp) { echo "ERROR: $errno - $errstr<br>\n"; } else { fwrite($fp,"\xFF\xFF\xFF\xFFW\x00".chr(10)); $st=fread($fp,1); if ($st) { $r=socket_get_status($fp); $r=$r["unread_bytes"]; $st.=fread($fp,$r); $sbstr=substr($st,5,5); fwrite($fp,"\xFF\xFF\xFF\xFFU".$sbstr."\x00".chr(10)); $st=fread($fp,1); if ($st) { $r=socket_get_status($fp); $r=$r["unread_bytes"]; $st.=fread($fp,$r); $playersn=ord(substr($st,5,1)); $st=substr($st,6); if (file_exists("/img/maps/".$map.".jpg")) $show_map = "<center><img src=\"/img/maps/".$map.".jpg\" width=\"160\" height=\"120\" style=\"border: 2 dashed #FF9900\"></center>"; else $show_map = "<center><img src=\"/img/maps/".$map.".jpg\" width=\"160\" height=\"120\" style=\"border: 2 dashed #FF9900\"></center>"; echo("<body text='AAAAAA'> \n \n"); echo(" <table>\n\n"); echo(" <tr>\n"); echo(" <table border=0 cellspacing=0 cellpadding=0 class=green_1_b style=\"padding-left: 10\">\n\n"); echo(" <td width=\"85\"><b>Сервер:</b></td><td width=\"180\">".$name."</td>\n"); echo(" </tr>\n"); echo(" <tr>\n"); echo(" <td width=\"85\"><b>IP:</b></td><td>".$server2ip.":".$port."</td>\n"); echo(" </tr>\n"); echo(" <tr>\n"); echo(" <td width=\"85\"><b>Карта:</b></td><td>".$map."</td>\n"); echo(" </tr>\n"); echo(" <tr>\n"); echo(" <td width=\"85\"><b>Игроков:</b> </td><td>".$current."/".$max."</td>\n"); echo(" </tr>\n\n"); echo(" </table>\n\n"); echo("<br> <p>$show_map</p><br>\n\n"); echo(" <center><table border=0 borderColor=#FF9900 cellspacing=0 cellpadding=0 style=\"border: 1 dashed #FF9900\">\n\n"); echo(" <tr>\n"); echo(" <td align=\"center\" width=\"15\" style=\"border: 1 dashed #FF9900\">#</td>\n"); echo(" <td align=\"center\" width=\"250\" style=\"border: 1 dashed #FF9900\"><b>Имя игрока</b></td>\n"); echo(" <td align=\"center\" width=\"70\" style=\"border: 1 dashed #FF9900\"><b>Фрагов</b></td>\n"); echo(" </tr>\n"); for ($i=1;$i<=$playersn;$i++) { $n=ord(substr($st,0,1)); $st=substr($st,1); $name=SubStr($st,0,StrPos($st,chr(0))); $kills=ord(substr($st,StrPos($st,chr(0))+1,1)); if ($kills==255){$kills=-1;} if ($kills==254){$kills=-2;} if ($kills==253){$kills=-3;} if ($kills==252){$kills=-4;} $st=substr($st,StrPos($st,chr(0))); $st=substr($st,9); echo(" <tr>\n"); echo(" <td width=\"15\">$n</td>\n"); echo(" <td width=\"250\"> $name</td>\n"); echo(" <td align=\"center\" width=70>$kills</td>\n"); echo(" </tr>\n"); }; echo("\n </table>\n\n"); echo("</body>\n"); }; }; }; fclose($fp); ?>