login  Naam:   Wachtwoord: 
Registreer je!
 Forum

[PHP] Socket script.

Offline Godlord - 11/03/2007 17:55 (laatste wijziging 11/03/2007 17:56)
Avatar van GodlordPHP gevorderde Hoi iedereen.

Ik probeer een script te maken via sockets maarja zoals gewoonlijk ben ik weer aan't knoeien ermee inplaats er iets goeds van te maken.

Ik krijg dus deze errors:
  1. Warning: fsockopen() [function.fsockopen]: unable to connect to 80.61.105.238:4001 (Een verbindingspoging is mislukt omdat de verbonden party niet correct heeft geantwoord na een bepaalde tijd, of de gemaakte verbinding is mislukt omdat de verbonden host niet heeft geantwoord. ) in D:\Web Server\home\v2\wogserverlist.php on line 4
  2.  
  3. Warning: fputs(): supplied argument is not a valid stream resource in D:\Web Server\home\v2\wogserverlist.php on line 5
  4.  
  5. Warning: fgets(): supplied argument is not a valid stream resource in D:\Web Server\home\v2\wogserverlist.php on line 6
  6.  
  7. Warning: fclose(): supplied argument is not a valid stream resource in D:\Web Server\home\v2\wogserverlist.php on line 7


  1. <?php
  2. $ip = '80.61.105.238';
  3. $port = 4001;
  4. $socket = fsockopen($ip, $port, $errornr, $error, 3);
  5. fputs($socket, "returnwebstatus".chr(237), 1024);
  6. echo str_ireplace(chr(237),"", fgets($socket, 1024));
  7. fclose($socket);
  8. ?>

Dit is mijn script, weet iemand wat er fout mee is?

Het moet dus "returnwebstatus".chr(237) zenden chr(237) symboliseert end_char dat is weer iets raars in de server. Als de server dat binnenkrijgt verzend de server: DeStatusVanDeServer.chr(237)

bv. "Online" en dat moet weergegeven worden dan en als de server niet aanstaat moet ie gewoon offline weergeven.

Kan iemand mij hierbij helpen bedankt. De server kan trouwens meer dan 2 statusen aannemen dus kom niet met zo'n script af van geconnecteerd = online, niet geconnecteerd = offline

Alvast Bedankt.

13 antwoorden

Gesponsorde links
Offline Stijn - 11/03/2007 18:23
Avatar van Stijn PHP expert Misschien omdat er een te snelle timeout is. Ik zou die timeout 3 eens veranderen in 30.
Offline WimJ - 11/03/2007 18:24
Avatar van WimJ Grafische gevorderde ik ben ook bezig met sockets
Dit voor mijn DA API (Direct Admin API)

Ik gebruik een voorbeeld bestand en breng hie rmijn uitbreidingen aan toe.

Ik zal je de url geven maar of je er iets mee bent dat weet ik niet echt maar het lukt me toch aardig tot nu toe

http://www.dire....php?t=258

hier mee behelp ik mij 
Offline Godlord - 11/03/2007 18:26 (laatste wijziging 11/03/2007 18:33)
Avatar van Godlord PHP gevorderde
  1. Warning: fsockopen() [function.fsockopen]: unable to connect to 80.61.105.238:4001 (Een verbindingspoging is mislukt omdat de verbonden party niet correct heeft geantwoord na een bepaalde tijd, of de gemaakte verbinding is mislukt omdat de verbonden host niet heeft geantwoord. ) in D:\Web Server\home\v2\wogserverlist.php on line 4
  2.  
  3. Fatal error: Maximum execution time of 30 seconds exceeded in D:\Web Server\home\v2\wogserverlist.php on line 4


Ik heb misschien een ander idee. Laat me even kijken.

Edit: Ik weet niks overs class in PHP .
btw. nu krijg ik deze error:
  1. Fatal error: Maximum execution time of 30 seconds exceeded in D:\Web Server\home\v2\wogserverlist.php on line 11


edit2: Komt nog steeds.
Dit is de code:
  1. <?php
  2. $sip = $_SERVER['REMOTE_ADDR'];
  3. if ($sip == '127.0.0.1') {
  4. $ip = '127.0.0.1';
  5. } else {
  6. $ip = '80.61.105.238';
  7. }
  8. $port = 4001;
  9. $socket = fsockopen($ip, $port, $errornr, $error, 20);
  10. fputs($socket, "returnwebstatus".chr(237), 1024);
  11. echo str_ireplace(chr(237),"", fgets($socket, 1024));
  12. fclose($socket);
  13. ?>
Offline Stijn - 11/03/2007 18:38
Avatar van Stijn PHP expert Hij timeout dus ik zou eens pingen naar 80.61.105.238 (doe het via CMD en gebruik de command ping).
Offline Godlord - 11/03/2007 18:40 (laatste wijziging 11/03/2007 18:50)
Avatar van Godlord PHP gevorderde Hij kent geen command ping .

Edit: ik zat in verkeerde folder.

Paketten verzonden 4 ontvangen 4 verloren 0
0% verlies
Minimum = 1ms Maximum = 1ms Gemiddelde = 1ms
Offline Stijn - 11/03/2007 18:50 (laatste wijziging 11/03/2007 18:51)
Avatar van Stijn PHP expert Ik heb eens gepingt naar dat IP en men kan gewoon niet aan dat adres of de pc/server ligt niet aan.

http://img440.imageshack.us/img440/6033/pinty5.jpg

Vermoedelijk is dat IP adres het IP van jouw internet?
Offline Godlord - 11/03/2007 18:55
Avatar van Godlord PHP gevorderde Het is het IP address van mijn router. Mijn static IP.
Offline Stijn - 11/03/2007 18:56 (laatste wijziging 11/03/2007 19:01)
Avatar van Stijn PHP expert en doe es gewoon localhost ipv dat static IP.

*edit*

kbedoel in je fsocketopen.
Offline Godlord - 11/03/2007 18:59
Avatar van Godlord PHP gevorderde Pingen naar ...[127.0.0.1]

Antwoord van 127.0.0.1: bytes=32 tijd<1 ms TTL=128
Antwoord van 127.0.0.1: bytes=32 tijd<1 ms TTL=128
Antwoord van 127.0.0.1: bytes=32 tijd<1 ms TTL=128
Antwoord van 127.0.0.1: bytes=32 tijd<1 ms TTL=128

verzonden = 4 verloren = 0 ontvangen = 4
0% verlies
min = 0ms max = 0ms gemiddelde = 0ms
Offline WimJ - 11/03/2007 19:58 (laatste wijziging 11/03/2007 20:04)
Avatar van WimJ Grafische gevorderde 127.0.0.1 is niet jouw ip adres hé..
Dat is het intern ip van je computer of wat was het ook alwaar maar zeker en vast niet je ip van je computer !

beste wat je kan doen voor je ip van computer te weten te komen is naar de volgende url gaan..

www.whatismyip.com dacht ik

en ping dan eens naar die ip
en zeg is wat ie zegt

Offline Godlord - 11/03/2007 20:51
Avatar van Godlord PHP gevorderde dat is IP: 80.61.105.238 dat weet ik allemaal uit mijn hoofd sinds ik er minimaal een keer per week wat moet mee doen.
Offline WimJ - 11/03/2007 21:07
Avatar van WimJ Grafische gevorderde dan moet je met dat IP werken in je socket script en deze gebruiken voro je socket te openen, en wijzigingen aan te brengen.
Offline Godlord - 11/03/2007 21:21
Avatar van Godlord PHP gevorderde Ik begrijp niet wat je bedoelt met 'deze'.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.23s