Jump to content

návod [Php][Tut]Samp Server Status


WhiteSK

Recommended Posts

Napíšem Vám tu návod na SA:MP Server Status.

 

Nepodporované webhostingy:

  • Endora

 

 

<?php
$ip = isset($_GET['ip']) ? $_GET['ip'] : 'IP SERVERU';
$port = isset($_GET['port']) ? $_GET['port'] : '7777';

$fp = fsockopen('udp://' . $ip, $port, $errno, $errstr);
if (!$fp)
{
echo "<b>Pripojenie zlyhalo ({$errno} - {$errstr})";
}
else
{
//Funguje
$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);
/*
$is_passworded = Zaheslovane
$plr_count = pocet hracov
$max_plrs = slotov
$hostname = Meno serveru
$gamemode = Mod serveru
$mapname = Mapa serveru
*/

fwrite($fp, $packet.'c');
fread($fp, 11);
$plr_count = ord(fread($fp, 2));
if ($plr_count > 0)
{

for ($i=0; $i<$plr_count; $i++)
{
$strlen = ord(fread($fp, 1));
$plrname = fread($fp, $strlen);
$score = ord(fread($fp, 4));
/*
	 $i = Poradie
	 $plrname = Meno hraca
	 $score = Skore hraca
	*/

}
}
fclose($fp);
}
?>

 

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...