Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]sprawdzanie czy serwer jest online
elewator
post
Post #1





Grupa: Zarejestrowani
Postów: 63
Pomógł: 1
Dołączył: 30.07.2008
Skąd: Ustka

Ostrzeżenie: (0%)
-----


Witam. Mam oto taki skrypt:
  1. <?php
  2. include("config.php");
  3.  
  4. $socket=@fsockopen($serwer,$porta,$errno,$errstr,2);
  5.  
  6. if($socket==true)
  7. {
  8. //jezeli tak, to wyswietla skrypt
  9. }else{
  10. echo"<font color='#FF0000'>offline</font>.";
  11. }
  12.  
  13. ?>

config.php:
  1. <?php
  2. $ips = Array("195.42.112.2:27015");
  3. $serwer="195.42.112.2"; // ip
  4. $porta="27015"; //
  5. ?>

No i tu mam problem. Nie ważne czy serwer jest online, czy offline. I tak pokazuje Offline. Czemu tak jest?
Go to the top of the page
+Quote Post
morswin
post
Post #2





Grupa: Zarejestrowani
Postów: 17
Pomógł: 3
Dołączył: 7.04.2005

Ostrzeżenie: (0%)
-----


sprawdź, czy na serwerze nie jest zablokowany port 27015, np przez firewall.
Go to the top of the page
+Quote Post
elewator
post
Post #3





Grupa: Zarejestrowani
Postów: 63
Pomógł: 1
Dołączył: 30.07.2008
Skąd: Ustka

Ostrzeżenie: (0%)
-----


czyli jak to sprawdzic? mam serwer platny na xaa, wiec nie powinno byc zablokowane.
Go to the top of the page
+Quote Post
Procesor
post
Post #4





Grupa: Zarejestrowani
Postów: 23
Pomógł: 2
Dołączył: 17.12.2008

Ostrzeżenie: (0%)
-----


fsockopen nie zwraca true w przypadku powodzenia, tylko handler do pliku.
  1. <?php
  2. include("config.php");
  3.  
  4. $socket=@fsockopen($serwer,$porta,$errno,$errstr,2);
  5.  
  6. if($socket==true)
  7. {
  8. //jezeli tak, to wyswietla skrypt
  9. }else{
  10. echo"<font color='#FF0000'>offline</font>.";
  11. }
  12.  
  13. ?>


Ten post edytował Procesor 15.11.2009, 20:43:53
Go to the top of the page
+Quote Post
elewator
post
Post #5





Grupa: Zarejestrowani
Postów: 63
Pomógł: 1
Dołączył: 30.07.2008
Skąd: Ustka

Ostrzeżenie: (0%)
-----


Cytat(Procesor @ 15.11.2009, 20:41:19 ) *
fsockopen nie zwraca true w przypadku powodzenia, tylko handler do pliku.
[PHP] pobierz, plaintext
  1. <?php
  2. include("config.php");
  3. $socket=@fsockopen($serwer,$porta,$errno,$errstr,2);
  4. if($socket==true)
  5. {
  6. //jezeli tak, to wyswietla skrypt
  7. }else{
  8. echo"<font color='#FF0000'>offline</font>.";
  9. }
  10. ?>
[PHP] pobierz, plaintext

wiec w jaki sposob bys proponowal rozwiazac moj problem?
Go to the top of the page
+Quote Post
Procesor
post
Post #6





Grupa: Zarejestrowani
Postów: 23
Pomógł: 2
Dołączył: 17.12.2008

Ostrzeżenie: (0%)
-----


Dziwne, bo skopiowałem twój post i poprawiłem kod, a zachowało się jakbym tylko wkleił.

  1. <?php
  2. include("config.php");
  3.  
  4. $socket=@fsockopen($serwer,$porta,$errno,$errstr,2);
  5.  
  6. if($socket==false)
  7. {
  8. //serwer offline
  9. }else{
  10. // serwer online
  11. }
  12.  
  13. ?>


Kod jest bardzo prosty ;p

@down: Edytuje, żeby nie było że nabijam tongue.gif
fsockopen zwraca FALSE w wypadku niepowodzenia, więc kiedy nie można się połączyć z serwem znaczy to, że jest offline. Jeśli fsockopen nie zwróci false, skrypt traktuje to jako serwer online. Przecież to wynika z powyższego kodu na pierwszy rzut oka.

Ten post edytował Procesor 15.11.2009, 21:01:55
Go to the top of the page
+Quote Post
Fifi209
post
Post #7





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Cytat(Procesor @ 15.11.2009, 20:50:54 ) *
Dziwne. Przerobiłem ten kod, a wysłało oryginalny...

  1. <?php
  2. include("config.php");
  3.  
  4. $socket=@fsockopen($serwer,$porta,$errno,$errstr,2);
  5.  
  6. if($socket==false)
  7. {
  8. //serwer offline
  9. }else{
  10. // serwer online
  11. }
  12.  
  13. ?>


Kod jest bardzo prosty ;p


Nabiłeś kolejnego posta, wysłałeś praktycznie ten sam kod.

Czyli

jeżeli serwer jest online pokaż że jest offline, w przeciwnym wypadku jest online

Ten post edytował fifi209 15.11.2009, 20:53:29


--------------------
Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP
Go to the top of the page
+Quote Post
elewator
post
Post #8





Grupa: Zarejestrowani
Postów: 63
Pomógł: 1
Dołączył: 30.07.2008
Skąd: Ustka

Ostrzeżenie: (0%)
-----


dziwne. Dalej pokazuje "offline"
Dziwi mnie jedno.
Jak zamiast IP serwera CS, wpisze IP serwisu wp, i port 80 to wszystko ladnie pokazuje.

Ten post edytował elewator 15.11.2009, 21:02:21
Go to the top of the page
+Quote Post
Procesor
post
Post #9





Grupa: Zarejestrowani
Postów: 23
Pomógł: 2
Dołączył: 17.12.2008

Ostrzeżenie: (0%)
-----


Prawdopodobnie masz zablokowany port 27015, żeby to zmienić prawie na pewno musisz się skontaktować z obsługa techniczną twojego hostingu.
Go to the top of the page
+Quote Post
elewator
post
Post #10





Grupa: Zarejestrowani
Postów: 63
Pomógł: 1
Dołączył: 30.07.2008
Skąd: Ustka

Ostrzeżenie: (0%)
-----


Phi. Place za hosting a oni mi jeszcze porty blokuja. Juz napisalem do supportu. Jak nie odblokuja, to najwyzej zmienie hosting. Dzieki za pomoc, procesor.

Pisalem do supportu no i porty nie sa zablokowane.
Go to the top of the page
+Quote Post
Procesor
post
Post #11





Grupa: Zarejestrowani
Postów: 23
Pomógł: 2
Dołączył: 17.12.2008

Ostrzeżenie: (0%)
-----


No to może na komputerze, z którego się łączysz, jest zablokowany. Nie masz jakiegoś firewalla zainstalowanaego albo coś?
Go to the top of the page
+Quote Post
elewator
post
Post #12





Grupa: Zarejestrowani
Postów: 63
Pomógł: 1
Dołączył: 30.07.2008
Skąd: Ustka

Ostrzeżenie: (0%)
-----


Nie, nie jest zablokowany.

o.0 sorki wielkie. zapomnialem ze jak sie laczysz z serwerem CS, to musi byc przez udp://. teraz dziala tongue.gif pozdrawiam.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 16:13