Bonjour,

Je souhaiterai vérifier qu'une URL saisi par un utilisateur fonctionne.

Dans un premier temps je vérifie la syntax de l'URL avec :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
filter_var($MonURL, FILTER_VALIDATE_URL)
puis je test si l'URL pointe bien vers un serveur avec :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
$ParseURL = parse_url($MonURL);
 
if (fsockopen ($ParseURL['host'], 80, &$errno, &$errstr, 15))
{
    // L'URL saisie est bonne
}
else
{
     // L'URL saisie n'est pas bonne
}
Ça fonctionne quand l'URL est bonne mais lorsque l'URL ne pointe vers aucun serveur j'obtiens l'erreur suivante :

Warning: fsockopen(): php_network_getaddresses: getaddrinfo failed: Name or service not known in /home/diskut/public_html/class/class.php on line 201 Warning: fsockopen(): unable to connect to www.euroe1.fr:80 (php_network_getaddresses: getaddrinfo failed: Name or service not known) in /home/diskut/public_html/class/class.php on line 201
Quelle est la bonne syntaxe pour ne pas voir ce message et juste afficher "L'URL saisie n'est pas bonne"

Merci