Aller au contenu
  • Pas encore inscrit ?

    Pourquoi ne pas vous inscrire ? C'est simple, rapide et gratuit.
    Pour en savoir plus, lisez Les avantages de l'inscription... et la Charte de Zébulon.
    De plus, les messages que vous postez en tant qu'invité restent invisibles tant qu'un modérateur ne les a pas validés. Inscrivez-vous, ce sera un gain de temps pour tout le monde, vous, les helpeurs et les modérateurs ! :wink:

Messages recommandés

Posté(e) (modifié)

Salut tout le monde !

 

Voila, mon maitre de stage m'a demande de faire une page php avec laquelle je vais ping un serveur et si j'ai une reponse, sur la page une image (par exemple) rouge ou verte pour indiquer si le serveur a repondu ou non... petit souci, les seules choses que je sais faire en php, c'est genre "ajouter une news" "supprimer une news" etc..., si vous connaissez des sites, des tutos sympas a me conseiller ou autre...

 

Merci d'avance !

Modifié par bloodyxdeath

Posté(e)
14.6 Comment faire un ping

 

Le mieux est encore de passer par exec() ou système() afin d'invoquer la commande ping de votre OS.

 

Exemple :

 

<?php

exec("ping -c 10 www.php.net", $list);

for ($i = 0; $i < count($list); $i++)

print $list[$i]."<br>";

?>

Source: http://www.phpindex.com/faq/faq_chapitre.php3?chapitre=14

Posté(e)

oui, mais c'est la seule facon pour faire un ping... pouvoir utiliser la fonction exec()...

Posté(e)

ok d'acc je savais pas trop cela ... il faut donc avoir les bons droits sur la machine (ce qui parait logique) et que la machine distante accepte les pings ... sinon ca foire.

 

+

Posté(e) (modifié)

Salut tout le monde !

 

Voila je bloque un petit peu, j'ai avance et voici une partie de mon code :

 

<?
    exec("ping serveur", $list); 
    $nb = count($list);
    $to_display=false;
    for($i=0;$i<$nb;$i++)
    {
     if(strpos($list[$i],"TTL")>0)
        $to_display=true;
     }
     if ($to_display)
      echo ('<img src="./ok.GIF">');
     else
      echo ('<img src="./erreur.GIF">');   
   ?> 

 

J'aimerais faire en sorte que cette partie du code soit une fonction et que selon le resultat ca affiche ok.gif ou erreur.gif dans un tableau de la page... Je suppose que je vais devoir retirer le Si et le faire une fois la fonction execute pour voir ensuite le resultat (vrai ou faux par exemple) de celle ci non ?

 

Merci d'avance !

Modifié par bloodyxdeath
Posté(e)

Une proposition:

<?

function ping($list){
   exec("ping serveur", $list);
   $nb = count($list);
   $to_display=false;
   for($i=0;$i<$nb;$i++)
   {
    if(strpos($list[$i],"TTL")>0)
       $to_display=true;
    }
    if ($to_display)
     $result="<img src=\"./ok.GIF\">";
    else
     $result="<img src=\"./erreur.GIF\">";
     
return $result;      
}
     
  ?>

Posté(e) (modifié)

Ho deja ? lol

Merci je vais tester, perso j'pensais pas que ca serait comme ca, jpensais faire le si a un autre endroit... lol

 

Je vais voir merci beaucoup !

 

Ok je viens de comprendre, effectivement, j'avais faux, c'est beaucoup mieux comme ca ^^

 

Quoi que je me suis perdu en fait :P

Pour appeller le resultat de la fonction a un endroit precis il ne faut pas faire ca :

 

[...]<td><? ping($list) echo $result ?></td>[...]

 

Merci d'avance

Modifié par bloodyxdeath
Posté(e)

Ca dépend en fait de ce que tu veux que la fonction te renvoit... si c'est directement le résultat avec une image, dans ce cas, laisse comme ca, sinon, si tu veux juste savoir si ca ping, renvoit juste $to_display...

Au fait, tu mets quoi dans $list?? une liste ?? ou bien juste l'@ IP...

Si c'est juste l'@ Ip, met $ip à la place de $list, car c'est pas tres clair sinon...

 

Edit: il faut que tu fasses comme ca:

<? 
include("tonfichierousetrouvelafonction.php");
$liste="tonadresseip";

echo ping($list);


?>

 

Si tu veux récupérer le résultat de la fonction il faut que tu fasses comme ceci:

 

$variable = ping($list);

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.
Remarque : votre message nécessitera l’approbation d’un modérateur avant de pouvoir être visible.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

  • En ligne récemment   0 membre est en ligne

    • Aucun utilisateur enregistré regarde cette page.
×
×
  • Créer...