Skip to content
Extraits de code Groupes Projets
Valider ee02ca62 rédigé par kent1@arscenic.info's avatar kent1@arscenic.info
Parcourir les fichiers

Amélioration de la regexp pour les codes postaux

Une regexp qui devrait accepter à peut près tous les codes postaux 

Une liste des codes à 5 chiffres

Un peu de commentaires dans tout ça

On passe en version 0.1.17
parent e043dc84
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
<paquet <paquet
prefix="verifier" prefix="verifier"
categorie="outil" categorie="outil"
version="0.1.17" version="0.1.18"
etat="test" etat="test"
compatibilite="[2.0.10;3.0.*]" compatibilite="[2.0.10;3.0.*]"
logo="images/verifier-128.png" logo="images/verifier-128.png"
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
<auteur>[Les Développements Durables->http://www.ldd.fr]</auteur> <auteur>[Les Développements Durables->http://www.ldd.fr]</auteur>
<icon>images/verifier-128.png</icon> <icon>images/verifier-128.png</icon>
<licence>GPL v3</licence> <licence>GPL v3</licence>
<version>0.1.17</version> <version>0.1.18</version>
<etat>test</etat> <etat>test</etat>
<description> <description>
<multi> <multi>
......
...@@ -7,7 +7,13 @@ if (!defined("_ECRIRE_INC_VERSION")) return; ...@@ -7,7 +7,13 @@ if (!defined("_ECRIRE_INC_VERSION")) return;
* Un code postal francais est compose de 5 chiffres * Un code postal francais est compose de 5 chiffres
* http://fr.wikipedia.org/wiki/Code_postal_en_France * http://fr.wikipedia.org/wiki/Code_postal_en_France
* a completer pour d'autre pays * a completer pour d'autre pays
* *
* cf : http://fr.wikipedia.org/wiki/Codes_postaux
*
* La regexp par défaut doit valider toutes les possibilités
* -* combinaisons de chiffres et de lettres et aussi tiret
* -* notations internationales cf : http://en.wikipedia.org/wiki/List_of_postal_codes#On_the_use_of_country_codes
*
* @param string $valeur * @param string $valeur
* La valeur à vérifier. * La valeur à vérifier.
* @param array $options * @param array $options
...@@ -23,10 +29,34 @@ function verifier_code_postal_dist($valeur, $options=array()){ ...@@ -23,10 +29,34 @@ function verifier_code_postal_dist($valeur, $options=array()){
$ok = ''; $ok = '';
switch ($options['pays']){ switch ($options['pays']){
case 'FR': case 'FR':
default:
if (!preg_match(",^((0[1-9])|([1-8][0-9])|(9[0-8]))[0-9]{3}$,", $valeur)) if (!preg_match(",^((0[1-9])|([1-8][0-9])|(9[0-8]))[0-9]{3}$,", $valeur))
return $erreur; return $erreur;
break; break;
case 'DZ':// Algérie
case 'DE':// Allemagne
case 'BY':// Bielorussie
case 'BA':// Bosnie Herzégovine
case 'HR':// Croatie
case 'ES':// Espagne
case 'FI':// Finlande
case 'GT':// Guatemala
case 'IT':// Italie
case 'LT':// Lituanie
case 'MY':// Malaisie
case 'MA':// Maroc
case 'MX':// Mexique
case 'ME':// Montenegro
case 'LK':// Sri lanka
case 'MX':// Mexique
case 'UA':// Ukraine
// 5 chiffres
if (!preg_match(",^[0-9]{5}$,", $valeur))
return $erreur;
break;
default:
if (!preg_match('/^[A-Z]{1,2}[-|\s][0-9]{3,6}$|^[0-9]{3,6}$|^[0-9|A-Z]{2,5}[-|\s][0-9|A-Z]{2,4}$|^[A-Z]{1,2} [0-9|A-Z]{2,5}[-|\s][0-9|A-Z]{2,4}/i',$valeur))
return $erreur;
break;
} }
return $ok; return $ok;
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter