Status serwera problem fsockopen

0

Witam, mam taka funkcje do sprawdzania czy serwer jest online, jednak nie dziala ona (potrzebne mi to jest do sprawdzenia dostepnosci serwera CS 1.6):
[code]

<?php $serwer="188.165.19.23"; $port="27061"; $socket=@fsockopen($serwer,$port,$errno,$errstr,2); if($socket==true) echo "Serwer online :) Można grać"; else echo("Nie dziala"); ?>[/code]

Sprawdzilem wszystkie mozliwe takie skrypty w googlach i zaden nie zadzialal ;/

Prosze o pomoc

0

Dodaj udp:// na początek treści $serwer.

0

[code]<?php
$serwer="udp://188.165.19.23";
$port="27061";
$socket=@fsockopen($serwer,$port,$errno,$errstr,2);

if($socket==true) echo "Serwer online :) Można grać";
else echo("Nie dziala");

?>[/code]

Cały czas pokazuje ze jest wlaczony pomimo tego ze jest serwer wylaczony ;/

0

WTF IS

if($socket==true)

Funkcja fsockopen zwraca typ resource, a nie bool.

if ($socket) {

Tak wystarczy.

0

Cały czas pokazuje ze serwer jest on ;/

0

Usuń tą złośliwą małpę sprzed funkcji fsockopen. Może ta funkcja jakieś błędy wywala?

0

Z manuala: http://pl2.php.net/manual/pl/function.fsockopen.php

"UDP sockets will sometimes appear to have opened without an error, even if the remote host is unreachable. The error will only become apparent when you read or write data to/from the socket. The reason for this is because UDP is a "connectionless" protocol, which means that the operating system does not try to establish a link for the socket until it actually needs to send or receive data."

0

Czyli nie da rady tego sprawdzic?? Jest jakis inny sposob?

0

write data to the socket

Podpowiedź: fwrite

0

w manualu nie widze nic co mogloby pomoc ;/

0

Ja nie mogę, napisz coś do serwera po prostu po otwarciu gniazdka:

http://pl.php.net/fwrite
http://pl.php.net/fwrite
http://pl.php.net/fwrite

Jeśli się nie uda, znaczy że serwer nie działa.

0

[code]<?php

$serwer="udp://188.165.19.23";

$port="27061";

$socket=fsockopen($serwer,$port,$errno,$errstr,2);

if(fwrite($socket,'123')) echo "Serwer online :) Można grać";
else echo("Nie dziala");

?>[/code]

Dalej caly czas pokazuje ze jest wlaczony, gdy wylaczylem serwer ;/

1 użytkowników online, w tym zalogowanych: 0, gości: 1