Controle de validité d'un code postal saisie

More
1 month 4 days ago #159749 by philippe42
philippe42 created the topic: Controle de validité d'un code postal saisie
Bonjour,

Je souhaite effectuer 2 contrôles sur un code postal saisi.
  1. Si le code postal n'est pas d'un département donné, afficher un message d'erreur.(Test sur les 2 premiers caractères du code postal)
  2. Si le code postal appartient à un ensemble de codes postaux (Un arrondissement). Afficher un autre message d'erreur.

Je n'ai pas la possibilité de créer des scripts . Cela est verrouillé par l'administrateur.

J'ai quelques notions de LimeSurvey.... Pour les 2 messages, j'ai créé 2 questions de type "Affichage de texte" mais je ne vois comment définir les conditions d'affichage.

Please Log in to join the conversation.

More
1 month 3 days ago #159754 by Nickko
Nickko replied the topic: Controle de validité d'un code postal saisie
C'est le bouton "fixer les conditions" lorsque tu es sur le détail d'une question.

Nickko
Ergonome / Usability expert

Please Log in to join the conversation.

More
1 month 3 days ago #159763 by philippe42
philippe42 replied the topic: Controle de validité d'un code postal saisie
Merci Nickko pour ta réponse.

Je me suis mal exprimé, je sais comment accéder à la page qui permet de fixer les conditions d'affichage mais je ne sais pas comment écrire une formule complexe de validité dans cette page. (mis à part l'utilisation d'une expression régulière)

Exemple : si le code postal saisi appartient à une liste de codes postaux prédéfinie alors j'affiche cette question de type "affichage de texte"

Please Log in to join the conversation.

More
1 month 3 days ago #159765 by Nickko
Nickko replied the topic: Controle de validité d'un code postal saisie
Il y a la notion de scénario pour les "OU" entre conditions et à l'intérieur d'un scénario, c'est "ET".
Je pense que tu peux gérer ça comme des nombre code_postal > 10000 et code_postal < 23500 etc.

Nickko
Ergonome / Usability expert

Please Log in to join the conversation.

More
1 month 3 days ago #159767 by philippe42
philippe42 replied the topic: Controle de validité d'un code postal saisie
Oui merci, c'est une solution.

Je n'avais pas trop regardé les expressions régulières mais pour ma première condition l'expression ci-dessous semble fonctionner :

Par exemple, pour afficher un message indiquant que le code postal saisi n'est pas un code postal du département 26, l'expression régulière [^(26)][0-9][0-9][0-9] semble correcte.

Pour ma deuxième condition je dois pouvoir aussi lister l'ensemble des codes postaux dans la condition régulière.
[26100]|[26200]|[26220]...... si je ne suis pas limité par la longueur autorisée d'une expression régulière

Please Log in to join the conversation.

More
1 month 3 days ago #159769 by Nickko
Nickko replied the topic: Controle de validité d'un code postal saisie
Top, dis nous si ça fonctionne.

Nickko
Ergonome / Usability expert

Please Log in to join the conversation.

More
1 month 3 days ago #159783 by philippe42
philippe42 replied the topic: Controle de validité d'un code postal saisie
  1. Pour la 1ère expression c'est OK : [^(26)][0-9][0-9][0-9] ( le code postal est en dehors du département 26 )
  2. Pour la 2ème faut remplacer les [ ] par des ( ) et c'est OK : (26100)|(26200)|(26220)...... (le code postal appartient à ceux présents dans l'expression régulière")

On peut clore ce sujet. :)
Merci

Please Log in to join the conversation.

More
1 month 3 days ago #159788 by DenisChenu
DenisChenu replied the topic: Controle de validité d'un code postal saisie
Sur la 1ère , on peut aussi utiliser
strlen(CodePostal) == 5 AND substr(CodePostal,0,2) == "26"

Sur la 2ème : il semble que tu ais trouvé le meilleur moyen

Assistance on LimeSurvey forum and LimeSurvey core development are on my free time.
I'm not a LimeSurvey GmbH member, professional service on demand (or search sondages pro).
An error happen ? Before make a new topic : remind the Debug mode .

Please Log in to join the conversation.

More
1 month 3 days ago #159791 by philippe42
philippe42 replied the topic: Controle de validité d'un code postal saisie
Merci DenisChenu,

On peut ta formule au même endroit que l'expression régulière ?

Please Log in to join the conversation.

More
1 month 3 days ago #159794 by DenisChenu
DenisChenu replied the topic: Controle de validité d'un code postal saisie
Non, c'est plus au niveau de la validation de question , tout en bas des paramètres. Ce qui est bien c'est que cela te permet d'indiquer le texte d'aide que tu souhaite.
manual.limesurvey.org/Question_type_-_Sh...8em_validation_sq.29

Pour y utiliser une regexp : il y a la fonction manual.limesurvey.org/Expression_Manager#Access_to_Functions regexMatch(pattern,input)

Donc regexMatch("/(26100)|(26200)|(26220)/",self) dans ton cas

Ce qui peut te permettre d'avoir le texte "Votre code postal ne semble pas valide".

Mais sinon : tu peux être intéressé par extensions.sondages.pro/questions-updati...a/documentation.html

Comme tu peux manipuler la base tu pourrais supprimer les lignes non désirables de la table.

Assistance on LimeSurvey forum and LimeSurvey core development are on my free time.
I'm not a LimeSurvey GmbH member, professional service on demand (or search sondages pro).
An error happen ? Before make a new topic : remind the Debug mode .

Please Log in to join the conversation.

More
1 month 2 days ago #159818 by philippe42
philippe42 replied the topic: Controle de validité d'un code postal saisie
Merci Denis pour toutes ces infos.

Cette extension est très intéressante mais je n'ai pas la main sur l'hébergement de l'application. De ce fait, je ne peux pas l'installer.

Please Log in to join the conversation.

Moderators: Nickko

Start now!

Just create your account and start using Limesurvey today.

Register now
Join our Newsletter!