Page 1 sur 1

dtecter si une url n'existe pas ou est 404

Posté : 18 oct. 2010, 16:21
par noze1st
bijour,
$adresse="adresse à tester";
function url_exists($adresse)
{
    $F=@fopen($adresse,"r");

    return ($F)? 1 : 0;

}
if (url_exists($adresse) == 1){

echo 'ok';
}
else
{echo 'pas ok';
}
J'utilise ce p'ti bout de code glané sur le web pour tester la validité d'une url. IL fonctionne seulement les page d'erreur 404 passe évidemment pour des url valide.
Y'a t-il un moyen de tester si une url non seulement est valide mais n'est pas non plus une age d'erreur 404 ?
Merci de me mettre sur la piste : j'ai lu dans un forum qq'1 qui disait qu'il fallait tester la chaine 404 mais comment ??

Re: dtecter si une url n'existe pas ou est 404

Posté : 18 oct. 2010, 16:22
par stealth35

Re: dtecter si une url n'existe pas ou est 404

Posté : 18 oct. 2010, 17:41
par noze1st
alors là c'est vraiment q'une piste ;-)
merci quand même stealth35.
Je vois l'idée je crois mais pour coder tout ça...
Je pense qu'il faut aller chercher dans le header si la chaine [404] est présente dans le title (je suppose).
Je galère grave avec les expression régulière alors un p'ti coup de main :priere:

Re: dtecter si une url n'existe pas ou est 404

Posté : 18 oct. 2010, 17:47
par stealth35
y'a un du forum qu'a fait ca (aosix je crois) faudrait retourvé

Re: dtecter si une url n'existe pas ou est 404

Posté : 18 oct. 2010, 17:53
par AB
http://www.php.net/manual/fr/function.g ... .php#97684
<?php
function get_http_response_code($theURL) {
    $headers = get_headers($theURL);
    return substr($headers[0], 9, 3);
}
?>
perso je mettrais un @ devant le get_headers...