begin process at 2012 05 31 04:41:47
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Réseau & Internet

 > 

Autre

 > 

Ping d'une IP en PHP


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Ping d'une IP en PHP

mercredi 9 juillet 2008 à 11:27:00 | Ping d'une IP en PHP

naeryan

Bonjour à tous, actuellement en train de développer une petite appli en php durant un stage en entreprise, j'aurais besoin de votre aide.
Je m'explique : Je souhaite faire un ping sur des "serveurs" de l'entreprise, et j'ai pour l'instant ce petit bout de code :
_______________________________________________________________________________________
     <?php
     echo (" Pingage :<br>");
     $ip=""; /* l'adresse que l'on veut pinguer*/
     $port=""; /* le port que l'on veut tester (ou rien si vous voulez juste pinguer..)*/

     /*test ping*/
     $ping_check=exec ('/bin/ping -c2 -q -w2 '.$ip.' | grep transmitted | cut -f3 -d"," | cut -f1 -d"," | cut -f1 -d"%"');
     if ($ping_check==0)
     echo ("Le boitier $ip marche <br><br>");
     if ($ping_check==1)
     echo (" Le boitier $ip ne MARCHE PAS <br><br>");

     /*Test port, inutile, si on ne met pas de port dans la variable $port*/
     if ($port && $ping_check==0)
     {
     echo (" Testing port...<br>");
     $portcheck=exec('/usr/bin/nmap -p '.$port.' --host_timeout=2500 '.$ip.'| grep '.$port.'/tcp | cut -f1 -d"/"');
     if ($portcheck!="")
     echo ( "le port $port est ouvert sur $ip");
     else
     echo ( "le port $port est fermé sur $ip");
     }
     ?>

_____________________________________________________________________________________

Le probleme est qu'il m'affiche que tous les serveurs marchent, alors qu'avec cmd et la fonction ping +adresse, je n'ai aucune réponse.
En ce qui concerne le port, je n'ai pas besoin d'aide pour l'instant

Pourriez vous m'aider s'il vous plait ?
Merci d'avance à tous

Cordialement

Naeryan
mercredi 9 juillet 2008 à 11:33:21 | Re : Ping d'une IP en PHP

naeryan

J'ai oublié de signaler que le bout de code vient d'ici :
http://www.phpcs.com/code.aspx?ID=20377
samedi 14 août 2010 à 06:21:09 | Re : Ping d'une IP en PHP

angeldeepa

Thanks for your codings..I recently found the one site called [ Lien ] .This site provides the ping test at free of cost.
Through this we can know the connection is active or not.
mercredi 25 mai 2011 à 12:22:11 | Re : Ping d'une IP en PHP

minouch351

slt,actuellement en train de développer un petit interface en php durant un stage en entreprise, j'aurais besoin de votre aide.
Je souhaite faire un ping sur un routeur ,cette interface contient les champs suivant:
-Adress IP/Hôte cible(type='text')
-taille de paquets en octets(type='text')
-paquet sans interruption (type='checkbox')
-paquet sans fragmentation (type='checkbox')
j'ai réussite a faire les 2 premier champs mais c pas le cas pour les 2 dernier champs.
voila mon code et merci:
<?php
error_reporting(E_ALL ^ E_NOTICE);

$pingFile = "resultat.ping"; // fichier temporaire utilisé

// HTML...
?>

<html>
<head>
<title>php ping version 0.1 </title>
<meta name="generator" content="Namo WebEditor v4.0">
<?php
// -- Retour au php --

// Page d'acceuil - Formulaire du ping
if(!isset($_GET['pingto']))
{
echo "<FORM NAME='PINGform' ACTION='$PHP_SELF' METHOD='GET'>
<table width='400' border='0' cellspacing='0' cellpadding='0'>
<tr>
<td >Adress IP/Hôte cible</td>
<td><input type='text' name='pingto' style='black; background-color:white;' > </td>

</tr>
<tr>
<td>taille de paquets en octets</td>
<td><input type='text' name='pingto' style='color:black; background-color:white;'></td>
</tr>
<tr >
<td >paquet sans interruption</div> </td>
<td ><input type='checkbox' name='pingto' value='inter'><br></td>
</tr>
<tr >
<td >paquet sans fragmentation</div> </td>
<td><input type='checkbox' name='pingto' value='fragm'><br></td>
</tr>
</table>


<br><br><input type='submit' value='Go !' style='color:black;
background-color:#0081ce; border-top-width:1pt; border-right-width:2pt;
border-bottom-width:2pt; border-left-width:1pt; border-color:black;
border-style:outset;' Onclick=\"this.value='Ping !';\"></form>";
}
else
// Page du résultat
{
$pingto= $_GET['pingto'];
$resultPing = PHPing($pingto, $pingFile);
//echo $pingFile;
$resultPing = str_replace('&#8220;','ô',$resultPing);
$resultPing = str_replace('ÿ','',$resultPing);
$resultPing = str_replace('&#8218;e','ée',$resultPing);
$resultPing = str_replace('&#710;','è',$resultPing);
$resultPing = str_replace('&#8225;','ç',$resultPing);
$resultPing = str_replace('&#8218;','é',$resultPing);

echo "<font size='4'>Résultat du Ping</font><br><br>
<textarea name='formResult' rows='10' cols='70'
style='color:black; background-color:white;'>$resultPing</textarea>
<br><a href='javascript:history.go(-1);'>Retour</a>";
}
// Retour au HTML
?>

</p>
</body>
</html>

<?php
//*************************************
// FONCTION DU PING
//*************************************
function PHPing($cible,$pingFile){
exec("ping -a -n 1 $cible >$pingFile", $list);
$fd = fopen($pingFile, "r");
while(!feof($fd))
{
$ping.= fgets($fd,256);
}
fclose($fd);
return $ping;
}
//-------------------------------------
?>
</center>
mercredi 8 juin 2011 à 09:55:26 | Re : Ping d'une IP en PHP

alfredosanchez

Salut, J'ai fais un peu le ménage dans ton code (dont je te remercie, je cherchais justement à faire ce test). Je te déconseille d'utiliser ton flag SansInterrruption question de ne pas faire boucler ton programme:
<?php
error_reporting(E_ALL ^ E_NOTICE);

$pingFile = "resultat.ping"; // fichier temporaire utilisé

//*************************************
// FONCTION DU PING
//*************************************
function PHPing($cible, $bufferSize, $dontfragFlag, $pingFile)
{
$param = "";
if ($bufferSize<>"") {$param.=" -l $bufferSize";}
if ($dontfragFlag<>"") {$param.=" -f";}

$pingRequest = "ping -a -n 1 $param $cible >$pingFile";
// echo $pingRequest; exit; // Just for debug

exec($pingRequest, $list);
$fd = fopen($pingFile, "r");
while(!feof($fd))
{
$ping.= fgets($fd, 256);
}
fclose($fd);
return $ping;
}


?>

<html>
<head>
<title>php ping version 1.0 </title>
<meta name="generator" content="Namo WebEditor v4.0">
<?php
// -- Retour au php --

// Page d'acceuil - Formulaire du ping
if(!isset($_GET['Submit']))
{
?>
<form name="PINGform" action="<?php echo $_SERVER['PHP_SELF'] ?>" method='GET'>

<table width='400' border='0' cellspacing='0' cellpadding='0'>
<tr>
<td >Adress IP/Hôte cible</td>
<td><input type='text' name='pingName' > </td>
</tr>
<tr>
<td>Taille de paquets en octets</td>
<td><input type='text' name='pingSize'></td>
</tr>
<tr>
<td>Paquet sans interruption</div> </td>
<td><input type='checkbox' name='interFlag'><br></td>
</tr>
<tr>
<td>Paquet sans fragmentation</div> </td>
<td><input type='checkbox' name='fragFlag'><br></td>
</tr>
</table>
<br><br>

<input type='submit' name="Submit" value="Go !" ></input>
</form>
<?php
}
else
// Page du résultat
{
$pingto = $_GET['pingName'];
$pingsize = $_GET['pingSize'];
$fragFlag = $_GET['fragFlag'];

$resultPing = PHPing($pingto, $pingsize, $fragFlag, $pingFile);

//echo $pingFile;
$resultPing = str_replace('&#8220;','ô',$resultPing);
$resultPing = str_replace('ÿ','',$resultPing);
$resultPing = str_replace('&#8218;e','ée',$resultPing);
$resultPing = str_replace('&#710;','è',$resultPing);
$resultPing = str_replace('&#8225;','ç',$resultPing);
$resultPing = str_replace('&#8218;','é',$resultPing);
?>
<font size='4'>Résultat du Ping</font>
<br><br>
<textarea name='formResult' rows='10' cols='70'
style='color:black; background-color:white;'><?php echo $resultPing ?></textarea>
<br>
<a href='javascript:history.go(-1);'>Retour</a>
<?php
}
?>

</body>
</html>


Cette discussion est classée dans : port, ip, ping, echo, check


Répondre à ce message

Sujets en rapport avec ce message

Testeur de port [ par kiki67100 ] BonjourJe voudrais testez Des port en php Voila mon codeif (isset($_GET['IP']) AND isset($_GET['PORT'])){$fp = fsockopen("udp://".$_GET["IP"]."", $_GE probleme connexion ports [ par bibou2811 ] Bonjour j'essaye de coder un petit script qui me permet de savoir si un port est ouvert, j'ai donc utilisé fsockopen. quand je test mon code en local FONCTION de validation d'une adresse IP avec PHP [ par faty86 ] Salut tout le monde !!Bon j'ai integré une fonction dans mon code php pour valider le format d'une adresse IP le problème lors de l'execution j'ai ce ping des adresses ip wan [ par ayoutadado ] bonjour svp j'ai besoin d'un code php dans mon application web pour faire un ping sur des adresses ipwan ;;dans le but de tester l'état de réseau(acti Utilisation de Socket en Php [ par alvinemambele ] Slt! je suis sur un projet web dont j'ai conçu une application web et je voulais intégrer la communication entre nous via le Socket parce que d'autres [Serialize/Unserialize] Probleme de variable [ par Ilsundal ] Bonjour à tous, voici mon soucis : j'ai une classe qui contient un connection persistente (pfsockopen). quand j'unserialize l'objet, toute les variab probleme avec lecture de fichier [ par dipin ] bonjour tout le monde !alors voila ce petit code pour un compteur unique marche très bien en local mais j'ai un problème pour l'affichage du nombre de Fonction de validation du format d'une @IP [ par faty86 ] Salut tout le monde !!J'ai integré une fonction( ki retourne true si une adresse IP passée en parametre est valide et False sinon) dans un code PHP ki SCRIPT ACCES CAMERA [ par eva4 ] Bonjour à tous, Vous l'aurez en parti devinné, ma question est dans la sujet. Je dispose d'une caméra de vidéo surveillance installée derriere une b Ping sous php [ par juki_webmaster ] Bonsoir , je voudrais avoir de l'aide pour crée un script php qui en utilisant une variable constente pingré une ip est afficherais sous forme :if ...


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,437 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales