Détection d'un site fermé ou pas [Résolu/Fermé]

Signaler
Messages postés
49
Date d'inscription
vendredi 11 avril 2008
Statut
Membre
Dernière intervention
27 mars 2013
-
Messages postés
49
Date d'inscription
vendredi 11 avril 2008
Statut
Membre
Dernière intervention
27 mars 2013
-
Bonjour,

Sur ma page index j'ai mis une météo qui provient d'un autre site (https://www.my-meteo.com/
Parfois le site en question ne fonctionne pas et donc j'ai un mauvais affichage de la partie "météo".

J'ai l'idée de faire un "if" (PHP) qui permet de changer la partie "météo", ç'est à dire que si ça ne marche pas parce que le site est fermé ou à une erreur 404, la partie météo disparaît.

Mais je ne sais pas comment détecter le site s'il fonctionne ou pas, pour que ça agit sur le "if" (PHP)

Pouvez-vous m'aider pour cette détection ?



5 réponses

Messages postés
49
Date d'inscription
vendredi 11 avril 2008
Statut
Membre
Dernière intervention
27 mars 2013
3
Bonsoir
Apparemment personne ne connaît la solution ?!

Ou peut être détecter un lien mort ?
Messages postés
1288
Date d'inscription
mardi 24 janvier 2012
Statut
Membre
Dernière intervention
26 octobre 2014
230
Salut,

A tester :
<?php
$domaine = "https://www.salesforce.com/products/platform/overview/";
$header = get_headers($domaine);
if($header['0'] == "HTTP/1.1 200 OK"){
 echo 'page en ligne';
 }
 else{
 echo 'Erreur : '.$header['0'].'';
 }
 ?>
 get_headers -- Retourne tous les en-têtes envoyés par le serveur en réponse à une requête HTTP

Messages postés
49
Date d'inscription
vendredi 11 avril 2008
Statut
Membre
Dernière intervention
27 mars 2013
3
Bonjour tryan44

Mercie m'aider.

J'ai testé en local est ça fonctionne.
Par contre sur mon hébergeur 1and1 j'ai 2 lignes d'erreur :

Warning: get_headers() [function.get-headers]: URL file-access is disabled in the server configuration in /homepages/--/----------/htdocs/index2.php on line 104

Warning: get_headers() [function.get-headers]: This function may only be used against URLs. in /homepages/--/----------/htdocs/index2.php on line 104


La ligne 104 contient :
$header = get_headers($domaine);
Messages postés
1288
Date d'inscription
mardi 24 janvier 2012
Statut
Membre
Dernière intervention
26 octobre 2014
230
Iil faut activer PHP5 sous 1&1 pour que ça fonctionne.

Si vous avez un fichier php.ini sur votre espace, ajoutez la ligne :
allow_url_fopen = On

sinon, créez ce fichier avec cette même ligne.

Si vous avez un fichier .htaccess, ajoutez :
AddType x-mapp-php5 .php .php3 .php4 .htm .html
AddHandler x-mapp-php5 .php .php3 .php4 .htm .html

sinon, créez le avec ces mêmes lignes.
Messages postés
49
Date d'inscription
vendredi 11 avril 2008
Statut
Membre
Dernière intervention
27 mars 2013
3
Malgré le fichier ".htacess" et ensuite en ajoutant la 2ème ligne ça ne marchai pas
Par contre avec le fichier php.ini ça marche !

Je te remercie beaucoup pour ton aide...

Cordialement
Gille