diff --git a/lang/verifier_ca.php b/lang/verifier_ca.php index 2502fe8c704be4e542ce595a6d360c5eb38d6dbe..6969ee2a9a808094b7f38e4201a3f5cfdd2a16ca 100644 --- a/lang/verifier_ca.php +++ b/lang/verifier_ca.php @@ -8,7 +8,8 @@ if (!defined("_ECRIRE_INC_VERSION")) return; $GLOBALS[$GLOBALS['idx_lang']] = array( // E - 'erreur_date' => 'El format de la data no és correcte.', + 'erreur_date' => 'La data no és correcte.', + 'erreur_date_format' => 'El format de la data no és correcte.', 'erreur_email' => 'L\'adreça de correu electrònic <em>@email@</em> no té un format vàlid.', 'erreur_email_nondispo' => 'L\'adreça de correu electrònic <em>@email@</em> ja s\'utilitza.', 'erreur_entier' => 'El valor ha de ser un nombre enter.', diff --git a/lang/verifier_de.php b/lang/verifier_de.php index 0493b2a29bc57b0ac6a1128e96da20e2dfd4e7e8..7e6b0b0a8c5af61e453e3900767d10448642663c 100644 --- a/lang/verifier_de.php +++ b/lang/verifier_de.php @@ -8,7 +8,8 @@ if (!defined("_ECRIRE_INC_VERSION")) return; $GLOBALS[$GLOBALS['idx_lang']] = array( // E - 'erreur_date' => 'Fromat des Datums ungültig', + 'erreur_date' => 'Das Datum ist nicht gültig', + 'erreur_date_format' => 'Format des Datums ungültig', 'erreur_email' => 'Die Mailadresse <em>@email@</em> hat einen Syntaxfehler.', 'erreur_email_nondispo' => 'Die Mailadresse <em>@email@</em> wird bereits verwendet.', 'erreur_entier' => 'Der Wert muß eine ganze Zahl sein.', diff --git a/lang/verifier_en.php b/lang/verifier_en.php index c307ce5cdf4d4be4e92f0149e1194869e3ebbf2c..8f10f0ecca5cb2df99d6b05f366fc5ba818efb40 100644 --- a/lang/verifier_en.php +++ b/lang/verifier_en.php @@ -8,7 +8,8 @@ if (!defined("_ECRIRE_INC_VERSION")) return; $GLOBALS[$GLOBALS['idx_lang']] = array( // E - 'erreur_date' => 'The date format is invalid.', + 'erreur_date' => 'The date is invalid.', + 'erreur_date_format' => 'The date format is invalid.', 'erreur_email' => 'The email address <em>@email@</em> is not correctly formatted.', 'erreur_email_nondispo' => 'The email address <em>@email@</em> has already been used.', 'erreur_entier' => 'The value must be an integer.', diff --git a/lang/verifier_fr.php b/lang/verifier_fr.php index 165ed9385e70d3c97a90c783ae7f9927a5fb1c85..3652e55cdef42b7b2a98ae8c392e229368a4322c 100644 --- a/lang/verifier_fr.php +++ b/lang/verifier_fr.php @@ -6,7 +6,8 @@ if (!defined("_ECRIRE_INC_VERSION")) return; $GLOBALS[$GLOBALS['idx_lang']] = array( // E - 'erreur_date' => 'Le format de la date n\'est pas accepté.', + 'erreur_date' => 'La date n\'est pas valide.', + 'erreur_date_format' => 'Le format de la date n\'est pas accepté.', 'erreur_email' => 'L\'adresse de courriel <em>@email@</em> n\'a pas un format valide.', 'erreur_email_nondispo' => 'L\'adresse de courriel <em>@email@</em> est déjà utilisée.', 'erreur_entier' => 'La valeur doit être un entier.', diff --git a/test/verifier.html b/test/verifier.html index e1d39e507f314d1367c50ca0492ad90cfbe9e776..60dd033b7526a458e004993e1f5d33733775280c 100644 --- a/test/verifier.html +++ b/test/verifier.html @@ -140,11 +140,17 @@ var_dump($verifier($siret_non_valide, 'siren_siret',array('mode'=>'siret'))); <?php $date_valide = "30-01-2009"; $date_non_valide = "321227822"; +$date_non_valide2 = "29-02-2011"; +$date_valide2 = "29-02-2012"; echo "Date JJ/MM/AAAA (avec séparateur /.-) : $date_valide ?"; var_dump($verifier($date_valide, 'date')); echo "Date JJ/MM/AAAA : $date_non_valide ?"; var_dump($verifier($date_non_valide, 'date')); +echo "Date JJ/MM/AAAA : $date_non_valide2 ?"; +var_dump($verifier($date_non_valide2, 'date')); +echo "Date JJ/MM/AAAA : $date_valide2 ?"; +var_dump($verifier($date_valide2, 'date')); ?> </pre> diff --git a/verifier/date.php b/verifier/date.php index 65f5942181532a9e74821fb625c47feebfc771e5..0957b90c649e6ecc9b5e227ef1e22ba7dc36a966 100644 --- a/verifier/date.php +++ b/verifier/date.php @@ -15,7 +15,7 @@ if (!defined("_ECRIRE_INC_VERSION")) return; */ function verifier_date_dist($valeur, $options=array()){ - $erreur = _T('verifier:erreur_date'); + $erreur = _T('verifier:erreur_date_format'); $ok = ''; // On tolère différents séparateurs $valeur = preg_replace("#\.|/| #i",'-',$valeur); @@ -24,7 +24,9 @@ function verifier_date_dist($valeur, $options=array()){ if(!preg_match('#^[0-9]{2}-[0-9]{2}-[0-9]{4}$#',$valeur)) return $erreur; // On vérifie vite fait que les dates existent, genre le 32 pour un jour NON, (mais on pourrait aller plus loin et vérifier en fonction du mois) list($jour,$mois,$annee) = explode('-',$valeur); - if(($jour > 31)|| ($jour < 1) || ($mois > 12) || ($mois < 1) || ($annee < 1800)) return $erreur; // 1800, je crois qu'avant les gens ne sont plus vivants °_° + // validité de la date + $erreur = _T('verifier:erreur_date'); + if (!checkdate($mois, $jour, $annee)) return $erreur; return $ok; }