Check IP + Port (PHP)

rotsak Messages postés 143 Date d'inscription   Statut Membre Dernière intervention   -  
jisisv Messages postés 3678 Statut Modérateur -
Bonjour,


Je suis administrateur d'un serveur "privé" Minecraft (je veux dire que je ne partage pas le lien à n'importe qui, car sinon, c'est tout à fait légal !) et je souhaiterai rajouter un gadget sur mon site.
En fait, il s'agit d'un gadget qui détermine si le serveur est ON ou non.
J'ai déjà pensé à un "@fsockopen" (le code que j'ai mis sera plus bas) mais il détermine que le serveur est toujours OFF.

Voici ce que j'ai mis :
<strong>Etat du serveur :</strong> <?php
 
  $server  = "IP";
  $port   = "PORT";
  $timeout = "10";
 
  if ($server and $port and $timeout)
    $resultat =  @fsockopen("$server", $port, $errno, $errstr, $timeout);
  if($resultat)
    echo "ON";
  else
    echo "OFF";
?><br />



Si vous avez une idée, merci de m'aider :D



Merci d'avance.
A voir également:

2 réponses

Mimilouuuuu
 
pourquoi ce if? if ($server and $port and $timeout)
0
rotsak Messages postés 143 Date d'inscription   Statut Membre Dernière intervention   21
 
Aucune idée, je ne connais pas totalement le PHP (voire pas du tout), donc on me passe des codes un peu tout fait (j'en ai honte, m'enfin, j'apprend de mon côté pour ne pas avoir à prendre le code des autres).
0
jisisv Messages postés 3678 Statut Modérateur 934
 
Chez moi, ce code semble fonctionner correctement:
johand@osiris: ~/src/CCM/php $ cat testsocket.php
<?php
  $port=80;
  $server  = "192.168.0.8";
  if ($argc >1 )
    {
    $port   = $argv[1];
    }
  echo "Testing $port\n";
  $timeout = 10;
 
  $resultat =  @fsockopen("$server", $port, $errno, $errstr, $timeout);
  if($resultat)
    echo "ON\n";
  else
    echo "OFF\n";
?>
johand@osiris: ~/src/CCM/php $ nmap 192.168.0.8 | grep 80
johand@osiris: ~/src/CCM/php $ php testsocket.php 80
Testing 80
OFF
johand@osiris: ~/src/CCM/php $ nmap 192.168.0.8 | grep 3128
3128/tcp open  squid-http
johand@osiris: ~/src/CCM/php $ php testsocket.php 3128
Testing 3128
ON
Je passe les tests de validité des arguments...

Johan
0