אהלן,
אני מנסה לבדוק האם שרת מסויים (לפי אייפי ופורט) זמין, בעזרת fopensocket.
זה הקוד:
קוד:
function checkServer($server_ip, $server_port)
{
$ip = gethostbyname($server_ip);
$port = $server_port;
$fp = fsockopen($ip, $port, &$errno, &$errstr,10);
if($fp)
$status=1;
else
$status=0;
fclose($fp);
return $status;
}
הבעיה בפונקציה שלפעמים היא מחזירה 1 גם אם סתם רשמתי אייפי לא קשור,
או שאם השרת לא זמין אני מקבל הודעת שגיאה:
קוד:
Warning: fsockopen() [function.fsockopen]: php_network_getaddresses: getaddrinfo failed: ���� ���� ���� ���� ���. in.....
וגם
Warning: fsockopen() [function.fsockopen]: unable to connect to *האייפי שאליו ניסיתי להתחבר* (Unknown error) in
למישהו יש דרך יעילה יותר לעשות את זה, ללא שגיאות?
תודה!