Posted March 14, 200421 yr Hello, Je suis en train de développer un script dont le but est de vérifier si un serveur Battlefield ou teamspeak fonctionne ou pas. Le principe est le meme que la fonction ping sous Win. Si on fait ping 192.168.1.12:8767 par exemple, il retourne quelque chose donc ca veut dire que le serveur est ON. Maintenant, la meme chose en PHP. J'arrive pas à trouver de fonction qui "ping" une adresse. Y a bien fsockopen mais ca ne marche pas avec le serveur TeamSpeak. Ca fait 2 heures que je parcour le site php.net a la recherche d'une autre fonction qui marche mais rien n'y fait. Une idée?
March 15, 200421 yr Tiens <?php $str=exec("ping -c 1 -w 1 127.0.0.1",$a,$a1); if(strstr($str, "100%")!=0) header("Location: http://www.google.ca/"); //si ca ping pas else header("Location: http://www.pcinpact.com"); //si ca ping
March 16, 200421 yr Author ouech j'avais pensé au exec mais le probleme c'est que cette fonction est désactivée sur les 99,99% des serveurs
March 16, 200421 yr Oui je sais, c'est le problème... Si tu trouve une autre manière, je vais pouvoir être indépendant de mon hébergeur actuel qui supporte le exec. En fait c'est un ami qui le host.
March 17, 200421 yr Comme sa sa marche aussi (et pas besoin d'exec ) <? if (@fclose(@fopen("http://www.google.fr", "r"))) { print("URL OK"); } else { print("URL PAS OK"); } ?> Voila voila
March 17, 200421 yr Author je commence a désespérer...ca marche toujours pas avec mes serveurs. j'ai mis ca <? if (@fclose(@fopen("udp://192.168.1.20:8767", "r"))) { print("URL OK"); } else { print("URL PAS OK"); } ?> pourtant l'adresse est correcte. J'ai meme indiqué le port.
March 17, 200421 yr Heuu bin ce truc marche pour vérifier une adresse internet mais pour un udp.... Tu devrai pouvoir faire sa avec la fonction fsockopen ( Voir manuel PHP )
March 17, 200421 yr Pourrais-je savoir : (@fclose(@fopen("udp://192.168.1.20:8767", "r"))) Ca fait quoi exactement, pourquoi un @ en avant aussi d'une fonction que je connais même pas.
March 17, 200421 yr fopen("udp://192.168.1.20:8767", "r") A la base sa c'est fait pour ouvrir des fichiers, la sa ouvrai le fichier qui ce trouve a l'adresse fournie (comme je lavai utilisé avec un site internet sa ouvrai le fichier index.php, index.html... vers lequel était redirigé le nom de domaine ) , le petit "r" après c pour dire qu'on l'ouvre en lecture (read). Le fclose c'est pour refermer le fichier tout de suite. Et le petit @ devant fopen et fclose c'est pour ne pas afficher les erreurs quand il y en a ( genre il arrive pas a ouvrir les fichiers ). Voila :clinoeil:
Archived
This topic is now archived and is closed to further replies.