par

Comment vérifier le format d'une URL dans un champ text du type INPUT ?

1 Réponse

+1 validé
par

On peut utiliser l'attribut PATTERN d'un INPUT d'un formulaire HTML5 pour vérifier le format d'une URL. Pour ce faire on utilise une expression régulière, une REGEX.

Plusieurs REGEX sont possibles en fonction du format de l'URL demandé.

La REGEX suivante accepte plusieurs formats d'adresses : les adresses avec un nom de domaine classique, les adresses IP, les alias, les URL contenant l'adresse d'une page (index.php par exemple), avec ou sans les paramètres passés en GET :

Voici le PATTERN correspondant:

pattern="^(?:http(s)?:\/\/)?[\w.-]+(?:\.[\w\.-]+)+[\w\-\._~:/?#[\]@!\$&'\(\)\*\+,;=.]+$"

Exemple (si vous saisissez autre chose que les caractères autorisés par la REGEX votre navigateur retourne une erreur) :

<form id="monFormulaire" method='post' action='#' role="form">
<input name="url" 
    id="url" 
    value="" 
    required="required" aria-required="true"
    pattern="^(?:http(s)?:\/\/)?[\w.-]+(?:\.[\w\.-]+)+[\w\-\._~:/?#[\]@!\$&'\(\)\*\+,;=.]+$"
    title="L'adresse du site web (URL)"
   type="text" spellcheck="false" style="width:50%;" />
<input type="submit" value="Envoyer" />
</form>

Remarque : Pour des raisons de sécurité vous devez également vérifier le format de l'URL coté serveur. Pour ce faire vous disposez de deux solutions.

  • Soit vous utilisez la REGEX avec la fonction PHP preg_match().
  • Soit vous utilisez la fonction PHP filter_var() avec son argument FILTER_VALIDATE_URL. Vous pouvez vus inspirer du code PHP disponible sur cette question.

Lectures Recommandées

Régis Chaperon - Welcome Reset

"Lorsqu'un virus informatique d'une nouvelle génération infecte en quelques heures les systèmes de distribution électriques, le monde entier se retrouve plongé dans le noir. Les banques, les distributeurs de billets, le chauffage, tout s'arrête."

Mais si même une intelligence artificielle américaine est incapable de vaincre le virus, est-ce qu'un homme qui a fui la modernité saura découvrir la faiblesse de ce virus informatique inconnu ?

Welcome Reset est un roman bien rythmé, efficace et réaliste.

Edward Snowden - Mémoires vives

"Je m'appelle Edward Joseph Snowden. Avant, je travaillais pour le gouvernement mais aujourd'hui je suis au service de tous. Il m'a fallu près de trente ans pour saisir la différence et quand j'ai compris, ça m'a valu quelques ennuis au bureau."

L'homme qui a tout risqué pour dénoncer la surveillance globale, ou l'extraordinaire histoire d'un garçon brillant qui a grandi "en ligne", d'un homme devenu espion, puis lanceur d'alerte, et, en exil, la consciencce de l'internet.

Mémoires vives est un témoignage exceptionnel, également disponible en numérique.

Sujets Connexes

Offre Sponsorisée

Ailleurs sur le Web

Merci pour votre visite sur 1FORMATIK.com

Un petit clic sur la pub est toujours apprécié, c'est elle qui finance le site

Bon surf

...