Проверка на IP+Port !?

LuBaTa

Registered
Здравейте, трябва ми скрипт който проверява дали на дадено IP, Порт (примерно - 12321 ) е пуснат
Ако не е пуснат да изписва нещо в картинкa (Примерно - "Shutdown" )
Става въпрос за Stats Banner
 
Нищо не се получи, пробвах да "вградя" последния код
Код:
    <?php
   
      $ip1 ="asd"; //ипто
      $port1 = "sad"; //порта

      $output = @fsockopen("udp://$ip1", $port1, $errno, $errstr, 0.25);
      @socket_set_timeout($output, 1);
      @socket_set_blocking($output, 1);

      @fwrite($output, "\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");

      $buffer = @fread($output, 4096);

      if (!$buffer) {
      $on = "<font color=\"red\">offline</font>";
      } else {
      $on = "<font color=\"green\">online</font>";
      }
echo $on;
?>
Ето моя код:(само че сложете някоя картинка с размери 500х120 че забравих да я дам..
http://web-tourist.net/userfiles/4/4466.zip - Изтегли
Също така като дам някой път рефреш и игрчите, името на сървъра и картата стават някакви числа които нямат нищо общо
Ще съм ви много благодарен ако ми помогнете...
 
Ами пробвай така: link

името на архива е същият, защото директно променях.

Всичко това, което ми даде, може да се пренапише по много по-добър начин.(с това не намеквам, че искам да го напиша наново)
 
Нищо не се получи.
Пиша IP и Порт(които със сигурност са offline) а то ми показва някакви други имена и Online (при всеки рефреш Online си стои, аз другите се сменят..)
 
1-я - Изображението „http://localhost/servers/3/server1.php“ не може да бъде изобразено, защото съдържа грешки.
2-я - Когато е Онлайн Показва Offline а когато е офлайн не показва нищо
И пак след рефреш показва различни имена, играчи и т.н
 
Оф, да са ***** в кухия.

server1.php

PHP:
<?php
header("Content-type: image/png");
require_once("inc.php");

$ip_port = array(1 => "79.132.0.126:80");

$rand = rand(1, count($ip_port));
$getip_port = explode(":", $ip_port[$rand]);

$ip = $getip_port[0];
$port = $getip_port[1];

//SERVER GETTING DATA
$s = new serverinfo($ip, $port);
$s->getServerData();
$name = $s->serverData['hostname']; 
$players = $s->serverData['players']; 
$maxplayers = $s->serverData['maxplayers']; 
$map = $s->serverData['map']; 


//IMAGE CREATE:
$imgopen = "image.png"; 
$im = imagecreatefrompng (''.$imgopen.''); 

//COLORS:
$black = imagecolorallocate($im, 0, 0, 0); 
$red = imagecolorallocate($im, 255, 0, 0); 
$green = imagecolorallocate($im, 0, 255, 0); 
$yellow = imagecolorallocate($im, 219,219,112);
$white = imagecolorallocate($im, 237,237,237);


imagettftext($im, 9,0,15,67, $white, "tacint.ttf",  "" . $ip_port[1]); 
imagettftext($im, 9,0,15,27, $yellow, "tacint.ttf",   "" . $name); 
imagettftext($im, 9,0,248,67,$white, "tacint.ttf",   "" . $players ."/".$maxplayers);
imagettftext($im,  9,0,15, 107,$white, "tacint.ttf",  "" . $map); 

if($s->getStatus()) {
	imagettftext($im, 9,0,248,107, $green, "tacint.ttf",  "0nline"); 
} 
else{
	imagettftext($im, 9,0,248,107, $red, "tacint.ttf", "0ffline"); 
}

imagesavealpha($im, true);      
imagepng ($im);
imagedestroy($im);
die();

?>

Замени кода в server1.php с този код, че ме мързи да качвам наново файла.
 
При онлайн и офлайн сървър:
Код:
Изображението „http://localhost/servers/4/server1.php“ не може да бъде изобразено, защото съдържа грешки.
 
Това се получава, защото getServerData не връща явно данни. Следователно долните функции се пълнят с грешки и ти изкарва, че не може да се изобрази, заради грешки.


ЕДИТ: Я дай някой примерен сървър да пробвам и аз. И ако може да дадеш изображението image.png. Така на сляпо в този късен час ми е малко трудно да преценя от какво се причинява тази грешка.
 
http://prikachi.com/images/302/4196302z.png
Това е картинката, само ч преименувай, и пак нестава:
Онлайн - показва всичко само че след рефреш става на....
Офлайн - Изображението съдържа грешки
 
LuBaTa каза:
http://prikachi.com/images/302/4196302z.png
Това е картинката, само ч преименувай, и пак нестава:
Онлайн - показва всичко само че след рефреш става на....
Офлайн - Изображението съдържа грешки


При мен работи безотказно.
 
Да стана, качих го на хостинг, но когато сървърът е Офлайн показва всичко точно, но ми пише че е онлайн..
 
Защо все при вас стават някакви грешки. Не знам какво да ти кажа повече. При мен работи, както подобава.
 

Back
Горе