Bonjour,
J'ai un script PHP qui contient une liste d'adresse IP à "pinguer", ce script stocke cette liste dans un fichier texte. De là, j'ai un script BASH (qui est en attente) qui lit le fichier ligne par ligne et fait un ping sur chacune, puis stocke le résultat dans un autre fichier. Ensuite le script initiale PHP doit pouvoir lire le résultat du ping de la liste des IP demandés.
J'aimerais que le fichier de résultat soit lue au fur et à mesure qu'il se complète. Le script BASH fonctionne parfaitement, le problème se situe dans le PHP.
J'ai déjà essayé de faire la lecture du fichier avec une méthode flush en PHP mais ça ne me convient pas.
Je vous mets quand même le script PHP, ci-dessous:
Je tiens à signaler que dans mon cas, je ne peux pas utiliser la fonction exec() de PHP.
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
16
17
18
19 //Liste des adresses IP à pinguer if (!file_exists("ping/liste")) { $fh = fopen("ping/liste", "a+") OR die("Can't open file"); fwrite($fh, "192.168.1.2\n192.168.1.21\n192.168.1.1\n192.168.1.4\n192.168.1.6\n"); fclose($fh); } //Attend que le fichier "ping" soit supprimer while (!file_exists("ping/liste_result")) {} do { //Lit le fichier de résultat $fh = fopen("ping/liste_result", "r") OR die("Can't open file"); while (!feof($fh)) { echo fgets($fh)."<br>"; } fclose($fh); } while (file_exists("ping/liste"))
Je vous remercie d'avance de vos réponses !
Partager