[PHP]Server-Status

09/18/2011 12:13 nybu#16
Sieht ganz gut aus schatzi ;)
:P
#thx given#
09/18/2011 12:53 xXx_Chrisi_xXx#17
Naja son plugin wär doch auch nice ^^ , meld dich mal skype
09/18/2011 21:49 Suchty112#18
PHP Code:
<title>ServerStatus</title>
<?php
$host 
= "85.214.24.133";
$port = 25565;

$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
$connected = socket_connect($socket, $host, $port);
if (
$connected) {
    
$ping_start = microtime(true);
    
socket_send($socket, "\xFE", 1, 0);
    
$data = "";
    
$result = socket_recv($socket, &$data, 50, 0);$ping_end = microtime(true);
    
socket_close($socket);

    if (
$result != false && substr($data, 0, 1) == "\xFF") {
        
$info = explode("\xA7", mb_convert_encoding(substr($data,1), "iso-8859-1", "utf-16be"));
        
$serverName = substr($info[0], 1);
        
$playersOnline = $info[1];
        
$playersMax = $info[2];
        
$ping = round(($ping_end - $ping_start) * 1000);
        echo     
"Server: $serverName<br/>
                Address: 
$host<br/>
                Port: 
$port<br/>
                Players Online: 
$playersOnline/$playersMax <br/>
                Ping: 
$ping ms<br/>";
    } else {
        echo 
"Failed to receive data";
    }
} else {
    echo 
"Failed to connect";
} 
?>
ISt aus dem Bukkit Forum
hier eine Preview
[Only registered and activated users can see links. Click Here To Register...]
funktioniert auch mit dem Vanilla Server
09/18/2011 23:03 DerSaboteur#19
Quote:
Originally Posted by Suchty112 View Post
PHP Code:
<title>ServerStatus</title>
<?php
$host 
= "85.214.24.133";
$port = 25565;

$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
$connected = socket_connect($socket, $host, $port);
if (
$connected) {
    
$ping_start = microtime(true);
    
socket_send($socket, "\xFE", 1, 0);
    
$data = "";
    
$result = socket_recv($socket, &$data, 50, 0);$ping_end = microtime(true);
    
socket_close($socket);

    if (
$result != false && substr($data, 0, 1) == "\xFF") {
        
$info = explode("\xA7", mb_convert_encoding(substr($data,1), "iso-8859-1", "utf-16be"));
        
$serverName = substr($info[0], 1);
        
$playersOnline = $info[1];
        
$playersMax = $info[2];
        
$ping = round(($ping_end - $ping_start) * 1000);
        echo     
"Server: $serverName<br/>
                Address: 
$host<br/>
                Port: 
$port<br/>
                Players Online: 
$playersOnline/$playersMax <br/>
                Ping: 
$ping ms<br/>";
    } else {
        echo 
"Failed to receive data";
    }
} else {
    echo 
"Failed to connect";
} 
?>
ISt aus dem Bukkit Forum
hier eine Preview
[Only registered and activated users can see links. Click Here To Register...]
funktioniert auch mit dem Vanilla Server
danke ;) hilft für die useranzahl usw ;)

€dit: scheint alles zu funktionieren bis auf players online wäre nett wenn du mir link zum Post per PN schickst ;) damit ich mir das genau ansehn kann.