fsockopen

phpbot

Registered
Имам код и искам да проверявам дали работи даден сървър със порт от две цифри. (80)

Това ще ми е за домейни...
Код:
<?php 
@session_start(); 
include("config.php"); 
$id = htmlspecialchars($_GET['id']); 
$sql = mysql_query("SELECT * from `servers` WHERE `id`='$id'"); 
while($row = mysql_fetch_array($sql)) { 
$id = $row['id']; 
$name = $row['name']; 
$ip = $row['ip']; 
$port = $row['port'];
$author = $row['author']; 

$ips= "$ip"; 
$ports= "$port"; 
    

$vt_ip = "$ips";   // Server IP 
$vt_port = "$ports";   // Port 

$output = @fsockopen("http://$vt_ip", $vt_port, $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) { 
   echo "<div id='hoverman'> 
<br><br><br><img src='cstrike.gif' width='16' height='16' /> $name <br />IP: $ip:$port 
<img src='line.png' width='250' height='14' />
<br><img src='status.png' width='16' height='16' /> Status : Offline
<img src='line.png' width='250' height='14' />
<br><img src='author-icon.png' width='16' height='16' />  Author : $author
<img src='line.png' width='250' height='14' />
<br><img src='author-icon.png' width='16' height='16' />  Port : $port
<img src='line.png' width='250' height='14' />
<center>";  
} else { 
   echo "<div id='hoverman'>
<br><br><br><img src='cstrike.gif' width='16' height='16' /> $name <br />IP: $ip:$port 
<img src='line.png' width='250' height='14' />
<br><img src='status.png' width='16' height='16' /> Status : Online
<img src='line.png' width='250' height='14' />
<br><img src='author-icon.png' width='16' height='16' />  Author : $author
<img src='line.png' width='250' height='14' />
<center>"; 
} 
} 
exit; 
?>
[/code]
 
Да, и въпроса ти е ?

Първото, което видях е, че fsockopen няма да ти разпознае следното http://79.12.30.103 (някакво си IP с http отпред). Когато подаваш IP, то трябва да си е в чист вид, без да се показват протоколи, затова си направи една проверка.

А сега е ред да кажеш какъв ти е въпроса или проблема.
 
Навсякаде в кода си наслагал '@', махни ги за да ти изпише ако има грешка за да може да видиш от къде е проблема.
 

Горе