Recherche dans page en php

Voyel -  
ktm620enduro Messages postés 377 Statut Membre -
Bonjour à tous !

Voilà mon problème : je dois pouvoir chercher une chaîne de caractères dans une page.

J'ai donc testé ce code :

$contenu_page = file_get_contents('http://www.google.fr');
if(preg_match("/google/i", $contenu_page))
	echo "Chaîne trouvée !";
else
	echo "Chaîne absente !";


Il marche très bien, pour un site externe. Seulement, j'aimerais chercher la chaîne de caractère "Toner restant" sur une page du réseau de l'établissement. (En fait c'est l'adresse IP d'une imprimante...)

Mais lorsque je mets l'adresse locale dans mon code :

$contenu_page = file_get_contents('http://172.16.**.**/Istatus.htm');
if(preg_match("/Toner restant/i", $contenu_page))
	echo "Chaîne trouvée !";
else
	echo "Chaîne absente !";


Ca m'affiche (sous Chrome) :

Aucune donnée reçue.
Impossible d'afficher la page Web, car le serveur n'a envoyé aucune donnée.
Voici quelques suggestions :
Actualisez cette page Web ultérieurement.
Erreur 324 (net::ERR_EMPTY_RESPONSE) : Le serveur a mis fin à la connexion sans envoyer de données.

Alors que je suis bien connectée au réseau puisqu'en tapant l'adresse "http://172.16.**.**/Istatus.htm", je tombe sur la page voulue.

J'ai testé également avec ce code :

$fichier = fopen('http://172.16.**.**/Istatus.htm', "r");
$contenu_page = '';
while (!feof($fichier))
	$contenu_page .= fread($fichier, filesize($contenu_page));
fclose($fichier);
if(preg_match("/Toner restant/i", $contenu_page))
	echo "Chaîne trouvée !";
else
	echo "Chaîne absente !";


Et ça me donne exactement le même résultat.

Alors j'aimerais bien comprendre pourquoi ce code fonctionne très bien avec une page externe au réseau de l'établissement, mais pas avec une page interne de ce réseau...

Merci d'avance de vos réponses !

Voyel.

1 réponse

ktm620enduro Messages postés 377 Statut Membre 38
 
essaye avec readfile...
0