Date et expression régulière

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Date et expression régulière

par mojorisin » 21 févr. 2007, 20:18

Salut,
tiens voila une expression régulière :
if(preg_match('`((?:0[1-9]|[1-2][0-9]|3[0-1]))/((?:0?[1-9]|1[0-2]))/(\d{4})`',$madate)){
// date correctement formatée
}
Bien évidemment cela ne vérifie pas si la date est valide (par exemple le 31/02/9999 passera)
Pour vérifier la validité de la date il te faudra regarder du cote de la fonction checkdate()

Date et expression régulière

par analfabete » 21 févr. 2007, 19:12

Bonjour j'ai un formulaire ou l'utilisateur doit remplir dans un formulaire uen date qu'il lui convient sous la forme 25/09/2007, plus généralement jj/mm/aaaa.
Et je désire vérifier si la date est au bon format a l'aide de la fonction preg_match
Mais je galère avec mon "debrit" de regex qui ne marche pas, la voilà:
$expr="^[0-31]{1}  /{1}  [0-12]{1}  (/20){1}  ((0[7-9]){1} | [10-12]{1})$";
if( !preg_match($expr,$madate) 
{
echo 'Date erroner';
}

else { echo 'Tout va bien';}

Si quelqun peux m'éclairer sa sera avec plaisir ...
Merci d'avance !