IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Système] Tester la connexion d'un PC


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Avatar de Lyche
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2007
    Messages
    2 523
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 523
    Billets dans le blog
    4
    Par défaut [Système] Tester la connexion d'un PC
    Bonjour,
    Je suis en train de développer un système de monitoring sur php/flash, mais j'ai un petit problème quant-au teste de ping.

    soit j'utilise la fonction exec (ping $ip etc..);
    soit j'utilise la fonction fsockopen($ip, 80, $errno, $errstr, 30);

    Malheureusement dans le premier cas, je me retrouve avec 200 fenêtres ping qui s'ouvrent (je dois tester, pour le moment sur 205IP) et qui se ferment immédiatement.. ce qui n'est pas spécialement agréable pour l'utilisateur. De plus, je n'arrive pas à récupérer, par cette commande, le retour qui me dit si le ping a fonctionné ou si l'ip testée n'est pas connectée.

    Dans le deuxième cas.. je dois mal faire quelque chose parce qu'il m'affiche les 2 voir les 3 premiers résultats, puis me fait une érreure en me disant que ma requète à dépassé les 60sec donc il m'envoie balader.

    Je n'arrive pas à trouver la formule idéale pour pinger chaque IP de ma DB et ca fait plus d'une semaine que j'y suis dessus.. dites moi que je suis nul

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <?							
    $ip = $row[1];
    $fp = fsockopen($ip, 80, $errno, $errstr, 30);
    if (!$fp)
      {
        $color = "green";
        $statut = "up";
      }
    else
      {
        $color = "red";
        $statut = "down";
      }
    fclose($fp);
    ?>
    ca c'est le code que j'utilise avec la commande fsockopen. Il me renvoie une érreure comme ci dessous :

    Warning: fsockopen() [function.fsockopen]: unable to connect to 172.19.43.2:80 (Une tentative de connexion a échoué car le parti connecté n'a pas répondu convenablement au-delà d'une certaine durée ou une connexion établie a échoué car l'hôte de connexion n'a pas répondu. ) in C:\Program Files\xampp\htdocs\xampp\monitoring\recuperationIP.php on line 45
    Je commence a me dire que j'ai pas fais le bon choix de langage, mais je souhaitait quelque chose de graphique grace a flash..

    PS : j'ai cherché partout sur le forum, mais je ne suis pas très doué dans ce domaine la. Je n'ai absolument rien trouvé d'équivalent à mes critères.

    Merci d'avance. Lyche
    Rejoignez la communauté du chat et partagez vos connaissances ou vos questions avec nous

    Mon Tutoriel pour apprendre les Agregations
    Consultez mon Blog SQL destiné aux débutants

    Pensez à FAQ SQL Server Ainsi qu'aux Cours et Tuto SQL Server

  2. #2
    Membre Expert

    Homme Profil pro
    Inscrit en
    Janvier 2004
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 249
    Par défaut
    tes 2 commandes ne sont pas equivalentes, car la commande ping n'interroge pas le port 80 de la machine. Il est donc normal que la connexion au port 80 échoue si la machine n'a pas de serveur web.

    En faisant une recherche, on trouve ce morceau de code qui a l'air de faire ce que tu souhaite : http://fr3.php.net/manual/fr/ref.sockets.php#42466

    si tu as acces a PEAR, tu as aussi cette classe : http://pear.php.net/manual/fr/html/p....net-ping.html

  3. #3
    Membre expérimenté
    Avatar de Lyche
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2007
    Messages
    2 523
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 523
    Billets dans le blog
    4
    Par défaut
    Après mintes tentatives infructueuse, je m'en remet a nouveau a vous, j'ai trouvé énormément de choses sur net_ping() et sur pear, mais aucune qui explique de facon claire comment l'installer et comment s'en servir..
    Je voudrais savoir si quelqu'un était capable de m'expliquer comment installer pear, et comment utiliser la classe net ping.
    Rejoignez la communauté du chat et partagez vos connaissances ou vos questions avec nous

    Mon Tutoriel pour apprendre les Agregations
    Consultez mon Blog SQL destiné aux débutants

    Pensez à FAQ SQL Server Ainsi qu'aux Cours et Tuto SQL Server

Discussions similaires

  1. [Système] Type de connexion ?
    Par grinder59 dans le forum Langage
    Réponses: 9
    Dernier message: 17/05/2006, 13h47
  2. Tester la connexion d'un PC
    Par iris44 dans le forum Windows
    Réponses: 15
    Dernier message: 03/02/2006, 20h09
  3. Réponses: 3
    Dernier message: 16/10/2005, 13h43
  4. Tester la connexion à une base
    Par kaboume dans le forum ASP
    Réponses: 4
    Dernier message: 04/03/2005, 15h54
  5. comment tester la connexion depuis un fichier BATCH
    Par philippe_Aix dans le forum Oracle
    Réponses: 13
    Dernier message: 11/10/2004, 16h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo