Просмотр темы 
 
		# 1 
Тема:  SAMP Мониторинг
		izvek  
		Пользователь  
 
 
 МестныйСообщений:  18 
Зарегистрирован:  13 Декабря 2008, 05:38:30 
Сказали спасибо  0 раз Статус:  offline 
		Опубликовано 25 Января 2010, 13:52:36 
		
 
 
		openside("name" ; 
?> 
if ($_GET['ip']) $ip = $_GET['ip']; 
if ($_GET['port']) $port = $_GET['port']; 
 
	if (!isset($ip)) 
		$ip = '10.11.5.27'; 
	if (!isset($port)) 
		$port = 7777; 
 
	$fp = fsockopen('udp://' . $ip, $port, $errno, $errstr); 
	if (!$fp) 
	{ 
		echo "<tr><td bgcolor=\"#2B5486\">Socket Error: $errno - $errstr</td></tr>\n"; 
	} 
	else 
	{ 
		$packet = 'SAMP'; 
		$packet .= chr(strtok($ip, '.' ); 
		$packet .= chr(strtok('.' ); 
		$packet .= chr(strtok('.' ); 
		$packet .= chr(strtok('.' ); 
		$packet .= chr($port & 0xFF); 
		$packet .= chr($port >> 8 & 0xFF); 
 
		fwrite($fp, $packet.'i' ; 
		fread($fp, 11); 
		$is_passworded = ord(fread($fp, 1)); 
		$plr_count     = ord(fread($fp, 2)); 
		$max_plrs      = ord(fread($fp, 2)); 
		$strlen        = ord(fread($fp, 4)); 
		$hostname      = fread($fp, $strlen); 
		$strlen        = ord(fread($fp, 4)); 
		$gamemode      = fread($fp, $strlen); 
		$strlen        = ord(fread($fp, 4)); 
		$mapname       = fread($fp, $strlen); 
 
		echo '      <tr><td bgcolor="#2B5486" colspan="2" align="center"><b>' . $hostname . '</b></td></tr>'."\n"; 
		echo '      <tr><td bgcolor="#2B5486" width="100">Players: </td><td bgcolor="#2B5486" width="250">' . $plr_count . ' / ' . $max_plrs . '</td></tr>'."\n"; 
		echo '      <tr><td bgcolor="#2B5486">GameMode: </td><td bgcolor="#2B5486">' . $gamemode . '</td></tr>'."\n"; 
		echo '      <tr><td bgcolor="#2B5486">MapName: </td><td bgcolor="#2B5486">' . $mapname . '</td></tr>'."\n"; 
		if ($is_passworded) 
		{ 
			echo '      <tr><td bgcolor="#2B5486">Passworded: </td><td bgcolor="#2B5486">Yes</td></tr>'."\n"; 
		} else { 
			echo '      <tr><td bgcolor="#2B5486">Passworded: </td><td bgcolor="#2B5486">No</td></tr>'."\n"; 
		} 
 
		fwrite($fp, $packet.'c' ; 
		fread($fp, 11); 
		$plr_count = ord(fread($fp, 2)); 
		if ($plr_count > 0) 
		{ 
			echo '    </table><br>'."\n"; 
			echo '    <table width="350" bgcolor="#000000" cellpadding="4" cellspacing="1" align="center">'."\n"; 
			echo '      <tr><td bgcolor="#2B5486" colspan="2" align="center"><b>Players:</b></td></tr>'."\n"; 
			echo '      <tr><td bgcolor="#2B5486" align="center" width="250"><b>Player</b></td><td bgcolor="#2B5486" align="center" width="100"><b>Score</b></td></tr>'."\n"; 
			for ($i=0; $i<$plr_count; $i++) 
			{ 
				$strlen = ord(fread($fp, 1)); 
				$plrname = fread($fp, $strlen); 
				$score = samp_getLong(fread($fp, 4)); 
				 
				echo '      <tr><td bgcolor="#2B5486">' . $plrname . '</td><td bgcolor="#2B5486">' .  
$score  . '</td></tr>'."\n"; 
			} 
		} 
		fclose($fp); 
	} 
?> 
    </table><br> 
    <center> 
      <small>© 2007 SA:MP Team. All rights reserved.</small> 
    </center> 
</body> 
</html> 
<? function samp_getLong($dat) { 
	$num=0; 
	if ((ord(substr($dat,3,1)) & 128) > 0) { 
		for ($i=0; $i<strlen($dat); $i++) { 
			$num-=((255-ord(substr($dat,$i,1))) << 8*$i); 
		} 
		$num--; 
	} else { 
		for ($i=0; $i<strlen($dat); $i++) { 
			$num+=(ord(substr($dat,$i,1)) << 8*$i); 
		} 
	} 
	return $num; 
} 
?> 
closeside(); 
 
помогите сделать мониторинг пожалуйсто  
		
 
 
		 
		
^ наверх ^  
 
 
		# 2 
  
		skyline  
		Пользователь  
 
[Дизайнер][PHP Scripter]  
 МестныйСообщений:  28 
Зарегистрирован:  12 Ноября 2008, 17:31:31 
Сказали спасибо  1 раз Статус:  offline 
ICQ статус   
		Опубликовано 26 Января 2010, 16:22:26 
		
 
 
		Вот мониторинг sampa. Точто красным замените на своё. 
Если хотите чтобы на этой тсранице можно было смотреть мониторинг других серверов самп то: 
Пропишете в адресной строке файл_мониторинга.php?ip=IP_servera &port=PORT_servera   и нажминте enter) 
Для работы мониторинга просто создайте файл например monsamp.php и скопируйте туда этот код! 
<? 
require_once "maincore.php"; // maircore 
require_once "subheader.php"; // Верхняя часть сайта 
require_once "side_left.php"; // панели сайта слева 
?> 
<style type="text/css"> 
body { font-family: verdana; font-size: 11px; } 
td { font-family: verdana; font-size: 11px; } 
</style> 
</head> 
<body bgcolor="#FFFFFF" text="#FFFFFF"> 
<br> 
<br> 
<div align="center"> 
<table width="350"  cellpadding="4" cellspacing="1"> 
<? 
 
$ip = $_GET['ip']; // ввод ипа и порта для мониторинга других серверов 
$port = $_GET['port']; // ( monitoring.php?ip=1.2.3.4&port=7777 ) 
if (!isset($ip)) 
$ip = "89.208.114.167 "; 
if (!isset($port)) 
$port = "7777 "; 
 
$fp = fsockopen('udp://' . $ip, $port, $errno, $errstr); 
if (!$fp) 
{ 
echo "<tr><td bgcolor=\"#FFFFFF\">Socket Error: $errno - $errstr</td></tr>\n"; 
} 
else 
{ 
$packet = 'SAMP'; 
$packet .= chr(strtok($ip, '.')); 
$packet .= chr(strtok('.')); 
$packet .= chr(strtok('.')); 
$packet .= chr(strtok('.')); 
$packet .= chr($port & 0xFF); 
$packet .= chr($port >> 8 & 0xFF); 
 
fwrite($fp, $packet.'i'); 
fread($fp, 11); 
$is_passworded = ord(fread($fp, 1)); 
$plr_count = ord(fread($fp, 2)); 
$max_plrs = ord(fread($fp, 2)); 
$strlen = ord(fread($fp, 4)); 
$hostname = fread($fp, $strlen); 
$strlen = ord(fread($fp, 4)); 
$gamemode = fread($fp, $strlen); 
$strlen = ord(fread($fp, 4)); 
$mapname = fread($fp, $strlen); 
 
 
echo ' <tr><td bgcolor="#2B5486" colspan="2" align="center"><b>' . $hostname . '</b></td></tr>'."\n"; 
echo ' <tr><td bgcolor="#2B5486" width="100">Игроков: </td><td bgcolor="#2B5486" width="250">' . $plr_count . ' / ' . $max_plrs . '</td></tr>'."\n"; 
echo ' <tr><td bgcolor="#2B5486">Мод: </td><td bgcolor="#2B5486">' . $gamemode . '</td></tr>'."\n"; 
echo ' <tr><td bgcolor="#2B5486">Карта: </td><td bgcolor="#2B5486">' . $mapname . '</td></tr>'."\n"; 
echo ' <tr><td bgcolor="#2B5486">Адрес: </td><td bgcolor="#2B5486">' . $ip . ':' . $port . '</td></tr>'."\n"; 
if ($is_passworded) 
{ 
echo ' <tr><td bgcolor="#2B5486">Пароль: </td><td bgcolor="#2B5486">Есть</td></tr>'."\n"; 
} else { 
echo ' <tr><td bgcolor="#2B5486">Пароль: </td><td bgcolor="#2B5486">Нету</td></tr>'."\n"; 
} 
 
fwrite($fp, $packet.'c'); 
fread($fp, 11); 
$plr_count = ord(fread($fp, 2)); 
if ($plr_count > 0) 
{ 
echo ' </table><br>'."\n"; 
echo ' <table width="350" bgcolor="#000000" cellpadding="4" cellspacing="1">'."\n"; 
echo ' <tr><td bgcolor="#2B5486" colspan="2" align="center"><b>Игроки:</b></td></tr>'."\n"; 
echo ' <tr><td bgcolor="#2B5486" align="center" width="250"><b>Игрок</b></td><td bgcolor="#2B5486" align="center" width="100"><b>Уровень</b></td></tr>'."\n"; 
for ($i=0; $i<$plr_count; $i++) 
{ 
$strlen = ord(fread($fp, 1)); 
$plrname = fread($fp, $strlen); 
$score = samp_getLong(fread($fp, 4)); 
 
echo ' <tr><td bgcolor="#2B5486">' . $plrname . '</td><td bgcolor="#2B5486">' .  
$score . '</td></tr>'."\n"; 
} 
} 
fclose($fp); 
} 
?> 
</table> 
</body> 
</html> 
</div> 
<center> 
<small>© 2007 SA:MP Team. All rights reserved.</small> 
</center> 
<? 
function samp_getLong($dat) { 
$num=0; 
if ((ord(substr($dat,3,1)) & 128) > 0) { 
for ($i=0; $i<strlen($dat); $i++) { 
$num-=((255-ord(substr($dat,$i,1))) << 8*$i); 
} 
$num--; 
} else { 
for ($i=0; $i<strlen($dat); $i++) { 
$num+=(ord(substr($dat,$i,1)) << 8*$i); 
} 
} 
return $num; 
} 
require_once "side_right.php"; // Панели сайты справа 
require_once "footer.php"; // Нижняя часть сайта (кописайт и прочее) 
?> 
 
		
 
			 
			[Изменил(а) skyline  , 26 Января 2010, 16:23:40]  
-------------------- ' ' 
		 
		
^ наверх ^  
     
 
Перейти на форум: 
Правила форума 
FAQ 
Новости и объявления 
 
Конкурс на лучший сайт на PHP-Fusion 6 
 
Разработка нового фьюжена 
 
Релизы/Текущие версии 
Установка и настройка системы 
Ошибки / Bugs Reports 
Будущие версии 
Народный SF Fusion 
Юмор 
 
Моды/Mods 
Плагины/Plugins 
Платные разработки плагинов и модов! 
 
ArtCell - профессиональный дизайн, верстка 
Темы оформления 
 
Хостинг 
Сайты на PHP-Fusion SF 
Вопросы / Жалобы / Предложения 
Флейм 
Оптимизация сайта и методы раскрутки 
 
  
 
 
 
 
 
117,047,795 уникальных посетителей сейчас: 04 Ноября 2025, 04:05:50 Генерация страницы: 0.08 сек. 
 
Original size:24 кб. GZipped size: 7 кб. Compression:72%