cs_nita2006
Messages postés89Date d'inscriptionmardi 1 juillet 2008StatutMembreDernière intervention12 août 2008 2 juil. 2008 à 16:31
Ok , dans ce cas la tu me recommande koi pour mon cas
je m'explique :
j'ai crée un formulaire avec trois boutons que chacun permet de lancer des .bat , avce des radios OUI ou NON qui signe si le serveur marche ou pas (en fait j ai trois serveur)
donc apres avoir piguer tous les serveurs je valide mon formulaire (les infos OUI ou NON sont stockées dasn ma bdd)
donc du moment que je peux pas voir mon script lancé , je fais comment pour savoir si mon serveur fonctionne sans que le resultat soit affiché dans la page web (ca fait moche)
Merci
cs_laurent1024
Messages postés987Date d'inscriptionmardi 31 mai 2005StatutMembreDernière intervention30 août 201225 2 juil. 2008 à 16:57
Dans mon précédent exemple j'affichais le script uniquement à titre d'exemple. Au lieu d'afficher ce qui est généré dans le fichier ping.txt, il suffit de rechercher dedans la ligne "perdus = 0"
cs_nita2006
Messages postés89Date d'inscriptionmardi 1 juillet 2008StatutMembreDernière intervention12 août 2008 3 juil. 2008 à 09:27
Oui j'avais bien compris ca , mais mon souci c'est comment savoir à partir d'un lien de ma page web si le serveur fonctionne .
autrement dit , je vais pas executer le .bat à part , faut qu'il y ait un moyen de l'executer à parti de ma page , et c'est ca le probeleme :s que je rencontre
cs_nita2006
Messages postés89Date d'inscriptionmardi 1 juillet 2008StatutMembreDernière intervention12 août 2008 3 juil. 2008 à 09:34
J'ai trouvé sur le net la fonction php exec() permettant d'executer des programmes exterieurs , mais je vois pas trop comment l'utiliser , et si c'est dans mon cas la qu'il faut l'utiliser !!
Merci
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_nita2006
Messages postés89Date d'inscriptionmardi 1 juillet 2008StatutMembreDernière intervention12 août 2008 3 juil. 2008 à 09:39
j'ai trouvé un exemple qui marché pour quelqu'un mais pas moi
en fait j ai mis a partir de ma page accueil le lien SERVEUR1 en lien avce la page essai.php qui contient le code suivant :
<?php exec ('D:\xampp\htdocs\dsi\web2p.bat');
?>
et quand le clique sur mon lien SERVEUR1 , ca met un ti ^peu de temps oui me mene vers la page essai.php qui est vide , donc y a pas message d'erreur
cs_nita2006
Messages postés89Date d'inscriptionmardi 1 juillet 2008StatutMembreDernière intervention12 août 2008 3 juil. 2008 à 10:05
Oui oui :d des fois je deconne , en fait j'ai trouvé une solution mais qui n est pas trop pratique .
a partir de mon lien serveur1 qui pointe vers 'appelweb2.php' qui contient le code suivant
Voir le fichier .txt sur le dossier exe dans la racine
<?php exec ('D:\xampp\htdocs\dsi\exe\web2p.bat');?>
donc une fois le technicien clique sur le lien il est dirigé directement vers la page appelweb2.php , ou il trouve le texte suivant : Voir le fichier .txt sur le dossier exe dans la racine
donc il est oblligé d'aller sur le dossier ou se trouve le fichier texte l'ouvrir et verifier si le serveur fonctionne (perte=0....)
c'est un peu lourd mais je vois pas autrment pour le faire
cs_laurent1024
Messages postés987Date d'inscriptionmardi 31 mai 2005StatutMembreDernière intervention30 août 201225 3 juil. 2008 à 10:24
tu peux très bien faire quelque chose du genre.
web2p.bat :
ping -n 5 web2p > D:\xampp\htdocs\dsi\exe\web2p.txt
appelweb2.php
<?php
exec ('D:\xampp\htdocs\dsi\exe\web2p.bat'); // on execute le script, création du fichier texte avec le résultat de la commande
$filename = "D:\xampp\htdocs\dsi\exe\web2p.txt"
$f = fopen($filename, "r"); // ouverture du fichier
$content = fread($f, filesize($filename)); // on met le contenu du fichier dans contentif (strpos($content, "perdu 0") false) { // on cherche dans le fichier la presence de "perdu = 0"
echo "Le serveur web2p ne repond pas";
}
else {
echo "Le serveur web2p est démarré";
}
fclose($f); // fermeture du fichier
unlink($filename); // suppression du fichier.
?>
cs_nita2006
Messages postés89Date d'inscriptionmardi 1 juillet 2008StatutMembreDernière intervention12 août 2008 3 juil. 2008 à 10:42
Oui j 'ai fais ce que tu m'as filé la mais ya une erreur a la ligne 4 (ouverture du fichier)
l'erreur est : Parse error: syntax error, unexpected T_VARIABLE in D:\xampp\htdocs\dsi\exe\appelweb2p.php on line 4
en fait pour cette ligneif (strpos($content, "perdu 0") false) { c est bien trois signes = qu'il faut mettre !????
cs_laurent1024
Messages postés987Date d'inscriptionmardi 31 mai 2005StatutMembreDernière intervention30 août 201225 3 juil. 2008 à 10:47
C'est a cause de la ligne $filename = "D:\xampp\htdocs\dsi\exe\web2p.txt" il faut mettre un point virgule à la fin.
$filename = "D:\xampp\htdocs\dsi\exe\web2p.txt";
cs_nita2006
Messages postés89Date d'inscriptionmardi 1 juillet 2008StatutMembreDernière intervention12 août 2008 3 juil. 2008 à 10:55
la encore c est pire ,
Warning: fopen(D:
mpp\htdocs\dsi\exe\web2p.txt) [function.fopen]: failed to open stream: Invalid argument in D:\xampp\htdocs\dsi\exe\appelweb2p.php on line 4
Warning: filesize() [function.filesize]: stat failed for D:
mpp\htdocs\dsi\exe\web2p.txt in D:\xampp\htdocs\dsi\exe\appelweb2p.php on line 5
Warning: fread(): supplied argument is not a valid stream resource in D:\xampp\htdocs\dsi\exe\appelweb2p.php on line 5
Le serveur web2p ne repond pas
Warning: fclose(): supplied argument is not a valid stream resource in D:\xampp\htdocs\dsi\exe\appelweb2p.php on line 12
Warning: unlink(D:
mpp\htdocs\dsi\exe\web2p.txt) [function.unlink]: Invalid argument in D:\xampp\htdocs\dsi\exe\appelweb2p.php on line 13
cs_laurent1024
Messages postés987Date d'inscriptionmardi 31 mai 2005StatutMembreDernière intervention30 août 201225 3 juil. 2008 à 11:05
Toutes mes excuses il faut mettre des simples quote
$filename = 'D:\xampp\htdocs\dsi\exe\web2p.txt';
ou alors doubles les \
$filename = "D:\\xampp\\htdocs\\dsi\\exe\\web2p.txt";
cs_nita2006
Messages postés89Date d'inscriptionmardi 1 juillet 2008StatutMembreDernière intervention12 août 2008 3 juil. 2008 à 11:18
oui c'était les quotes .
mais y a toujours un petit prob , le message qu'il m'affiche c est le serveur ne repond pas .
j'ai enlevé le unlink juste question de verifier si y a perdu=0 dans mon fichier texte , il y est .
dans mon .bat j'ai modifié le nom de serveur (jai mis nimporte quel nom) , il ma crée le fichier txt disant que le nom de serveur erroné , donc c est normal qu'il sorte le message .
mais a ce que je pense qu'il parcout pas le else ??
cs_nita2006
Messages postés89Date d'inscriptionmardi 1 juillet 2008StatutMembreDernière intervention12 août 2008 3 juil. 2008 à 11:35
olalalaaa ce que je suis bete :s , j'ai pas fais gaff , je te remercie .
derniere question stp , je veux que ce message soit affcihée dans une pop up , j'ai essayé avce le _self mais c'est carrement une nouvelle page qu'il me sort .
sinn je poste ce prob sur un autre thème si c'est pas ton truc :d
merci bcp
cs_laurent1024
Messages postés987Date d'inscriptionmardi 31 mai 2005StatutMembreDernière intervention30 août 201225 3 juil. 2008 à 12:05
Moi ce que je ferais c'est que sur ta page ou tu a le lien "tester le serveur", je remplacera ce morceau de page, par le script qui fait le test de ping, pour remplacer le lien "tester le serveur web2p" par "serveur web2p ACTIF" ou serveur web2p INACTIF".
cs_nita2006
Messages postés89Date d'inscriptionmardi 1 juillet 2008StatutMembreDernière intervention12 août 2008 3 juil. 2008 à 12:18
en fait j'ai pas fais finalement un lien , c'est un bouton que j'ai mis pour chauqe serveur vu que j'en ai trois
mais bon c'est pas grave je mettrai mon resultat sur une nouvelle page .
une qeustion , est ce que cest possible de mettre un <form> à l'interieur d'un autre <form>
??