Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

VFORM (CONTRÔLE COMPLET DE FORMULAIRE)


Information sur la source

Catégorie :Formulaire Classé sous : contrôle, formulaire, regexp, français, anglais Niveau : Débutant Date de création : 28/02/2008 Vu / téléchargé: 8 175 / 827

Note :
9 / 10 - par 1 personne
9,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (18)
Ajouter un commentaire et/ou une note

Description

VForm est script Javascript permettant le contrôle d'un formulaire et a été développé pour répondre à de nombreux besoins de programmeurs "basiques" qui ne voulaient pas se prendre la tête avec les regexp ou autres algorithmes.

Il permet de vérifier les saisies :

    Alphabétiques (possibilité de contrôle des minuscules et majuscules)
    Alphanumériques (idem)
    Les chemins d'accès
    Les codes postaux en fonction d'un code pays
    Les codes EAN (European Article Numbering) 8 et 13
    Les codes GTIN (Global Trade Item Number) 8, 12, 13, et 14
    Les codes ISBN (International Standard Book Number)
    Les code SSCC (Serial Shipping Container Code)
    Les dates (multiples formats possibles)
    Les heures et durées (idem)
    Les entiers signés et non signés
    Les extensions de fichiers
    Les hexadécimaux
    Les numéros fiscaux français
    Les adresses IP
    Les adresses MAC réseau
    Les adresses emails
    Les immatriculations en fonction d'un code pays
    Les mots de passe, avec contrôle de "qualité"
    Les réels signés et non signés
    Les numéros de RIB en fonction d'un code pays
    Les numéros IBAN (International Bank Account Number) en fonction d'un code pays
    Les num éros de SIREN en fonction d'un code pays
    Les numéros de SIRET en fonction d'un code pays
    Les numéros NAF en fonction d'un code pays
    Les numéros de TVA en fonction d'un code pays
    Les numéros de sécurité sociale en fonction d'un code pays
    Les numéro de téléphones fixes en fonction d'un code pays
    Les numéro de téléphones portables en fonction d'un code pays
    Les saisies textes
    Les url avec et sans préfixes

Ceci avec des critères tels que :

    Longueur minimum ou maximum
    Fourchette de choix dans les select, radio, et cases à cocher
    Valeur minimum et maximum (avec possibilité d'uniquement un minimum ou uniquement un maximum)
    Comparaison de champs
    Enumérations de valeurs possibles

Les contrôles de cohérence, quand cela est possible, sont également effectués.

Il gère également les styles des champs valides et erronés, les messages à afficher en cas d'erreur, et le multilanguage.

Il sait différencier le pays de test (pour les champs tels que téléphone, code postal, sécurité sociale...) de la langue des messages d'erreurs.

Ceci permet de saisir des données sur des pays étranger, tout en ayant une langue d'affichage différente du pays.

Pour un exemple et la syntaxe d'utilisation, reportez-vous à l'exemple donné dans l'archive et au fichier lisezmoi.txt.
 

Conclusion

Je ne suis pas programmeur professionnel, aussi merci de votre indulgence (j'entends déjà siffler les balles ;) )
VForm est publié en licence GPL, aussi toute correction ou amélioration sera la bienvenue.
Il manque certainement certains masques (ou certains ne sont pas complets), aussi n'hésitez pas à me contacter.

 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Commentaires et avis

signaler à un administrateur
Commentaire de XtremDuke le 28/02/2008 18:01:09

Waouh, autant dire que tu en as passé du temps pour pondre tout ça !

Je n'ai pas tout regardé (6000 lignes, ca fait trop pour une fin de journée) mais ça parait être très intéressant et très certainement utile dans beaucoup de domaines.

signaler à un administrateur
Commentaire de kakoo le 28/02/2008 18:35:34

Du temps ? Je l'ai pas vraiment compté (heureusement !)...

J'attends tes commentaires, tes corrections...ou tes suggestions.

Encore merci pour tes encouragements.

signaler à un administrateur
Commentaire de jantosze le 29/02/2008 17:11:58

salut KAKOO

function htmlentities(texte) et function html_entity_decode(texte) , je pense qu'il est possible d'optimiser les fonctions:
- créer 2 lists findstring, newstring (pour HTML ) des N éléments à rechercher et substituer
Puis for i=0 i < N i++; texte = texte.replace(  findstring[i], newstring[i]); pour htmlentities par ex,
for i=0 i < N i++; texte = texte.replace(  newstring[i], findstring[i] );
le code des fonctions devient indépendant du data.

Pour ConvertAccents puisque la liste est fixe ne peut-on pas l'organiser pour qu'à partir texte.charAt(i) avoir un index d'accès dans la liste ce qui nous évitera ce grand switch: ex MaListe=\242\243....    texte_ok += MaListe[texte.charAt(i)-offset]  où offset gère le décalage dans la liste (attention au typage de texte.charAt(i) qui doit être un nombre et au classement de MaListe pour éviter un plantage avec offset).

Pour le moment j'en suis resté là...
Cdt
JAN

signaler à un administrateur
Commentaire de kakoo le 01/03/2008 09:56:53

Bonjour,

J'avais dévéloppé séparémment les fonctions htmlentities et html_entity_decode, pour "le fun".

En fait, je ne m'en servirait pas pour VForm.

Mais bon, je retiens tes suggestions.

Pour ConvertAccents, je suis ok sur le "grand switch", mais je ne suis pas certains que ça aille plus vite avec l'autre méthode.

A voir

signaler à un administrateur
Commentaire de codefalse le 05/03/2008 05:48:13 administrateur CS

La validation de formulaire c'est toujours un ptit truc à avoir de bien sympas sur son site :) Mais 6000 lignes de codes, ca fait trop lourd je trouve. Ca peux etre long pour le visiteur, juste pour attendre si ce qu'il à entré est correct !

signaler à un administrateur
Commentaire de kakoo le 05/03/2008 12:22:30

Bonjour,

Avant de dire que "ça prend du temps", tu as testé ?

J'ai un bon nombre d'utilisateurs sur ce script et personne ne s'est plaint ;)

Je teste jusqu'50 champs...en 2 secondes.

Bons tests

signaler à un administrateur
Commentaire de codefalse le 05/03/2008 13:09:25 administrateur CS

Non je contredit pas la qualité de ton code, je veux dire qu'un type sous 56kbps (et oui ca existe encore !). Ca va pas faire trop lourd un fichier de ce genre ? Si en plus on rajoute un framework style Dojo, Prototype, ... C'est ca que je veux dire :p
Les tests doivent etre rapides une fois chargé, j'en doute pas !  :p

signaler à un administrateur
Commentaire de kakoo le 05/03/2008 13:15:05

Effectivement, si on demande également à faire de l'eau chaude... :D

Ceci étant, on va pas non plus "massacrer" une appli pour tout le monde parce que quelques uns ont encore de la "vieille" technologie.

Et puis, s'il y a une gros formulaire, c'est que déjà, le site est "balaise" donc long à charger pour ce genre d'utilisateur.

C'est certes un choix de ma part, mais bon...

Merci

signaler à un administrateur
Commentaire de codefalse le 05/03/2008 18:30:03 administrateur CS

A mon avis les personnes ayant une connection ne l'ont pas par choix. Ce que je veux dire par là c'est que je suis sur que ton code peut-etre dimunué en taille sans perdre de sa valeur. Ce qui serait un bien pour tous.

Apres comme tu le dit tres bien, c'est un choix de ta part :D

signaler à un administrateur
Commentaire de kakoo le 05/03/2008 19:34:57

Le code étant GPL, je suis très impatient de voir tes améliorations, comme cela on pourra tous en profiter. ;)

Comme je l'ai dit, je ne suis pas un programmeur professionnel, le code est donc largement perfectible.

signaler à un administrateur
Commentaire de codefalse le 05/03/2008 19:40:35 administrateur CS

http://www.javascriptfr.com/code.aspx?ID=45845 voila ;)

signaler à un administrateur
Commentaire de kakoo le 05/03/2008 19:53:21

Beau source...mais on fait pas la même chose et on ne le destine pas aux mêmes utilisateurs (plus de 30% des utilisateurs de VForm sont Anglophones...et dans 20 pays différents!)

Ceci étant, comme déjà dit, je suis ouvert à tout...

signaler à un administrateur
Commentaire de codefalse le 05/03/2008 23:34:24 administrateur CS

Perso je suis ouvert à tout, et ton code possède des fonctionnalités que mon code ne propose pas, mais je ne comprends pas ce que tu entends par le fait que ton code ne se destine pas aux mêmes utilisateurs. C'est pourtant dans les deux cas des vérificateurs de formulaires non ? Les deux n'imposent pas un langage (francais ou anglais) et sont relativement modulaires vis-à-vis de cela. Tu pourrais détailler ?

signaler à un administrateur
Commentaire de kakoo le 06/03/2008 07:37:49

L'idée pour VForm était d'être internationalisé et de répondre à tous les tests possibles, y compris les spécifiques par pays (par exemple, pour le téléphone ou les dates , les masques et les contrôles sont très différents d'un pays à l'autre).

Il fallait également répondre de manière simple aux personnes ayant besoin de contrôler des formulaires lourds, complexes, et multilingues.

Disons, que dans le cas de ton script, les Français seront grandement satisfaits et qu'il est parfait pour cela (et même excellent), et que VForm répondra correctement aux besoins des développeurs Français et étrangers.

Je te propose, si tu le veux, de travailler sur VForm pour l'optimiser "au taquet" et d'en faire un outil qui conservera sa spécificité et aura la qualité de ton optimisation.

Si ça t'intéresse, contacte-moi en PM.

Merci

Galawa

signaler à un administrateur
Commentaire de codefalse le 06/03/2008 08:05:28 administrateur CS

D'accord ! la je comprends mieux. Le fait que tu permette le test pour des spécificités d'autres pays, je vois mieux ce que tu veux dire par internationalisation :p
Pour t'aider je veux bien mais j'ai vraiment pas beaucoup de temps en ce moment. Peut-etre plus te filer des conseils quand je peux, ce serait peut-etre plus facile dans ce sens ?
Tu peux aussi t'inspirer de ma source si tu trouve certains points intéressants, elle est aussi en GPL (même si c'est pas indiqué) donc ya pas de soucis là dessus, j'irai pas porter plainte ;)

signaler à un administrateur
Commentaire de kakoo le 06/03/2008 08:30:24

Ok...je suis toute ouïe ;)

signaler à un administrateur
Commentaire de nicomilville le 30/03/2008 12:01:58

Très intéressant, il y a quelques fonctions que je vais retenir !!!

signaler à un administrateur
Commentaire de vilfarfadet le 05/12/2008 10:42:47 9/10

Beau boulot, vraiment.

J'ai trouvé votre code parce que je voulais vérifier s'il y avait déjà sur le site un vérificateur de numéro de TVA intracommunautaire.

Une petite suggestion, il faudrait peut-être passer à l'encodage UTF-8 pour les accents : cela ferait un code plus international. Par contre, ça complique la conversion accents <-> encodage html.

-

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

contrôle formulaire en français sous DW4 [ par StephdeBor ] Urgent : Voudrais message d'erreur en français et non en anglais sous DW4 pour le contrôle d'un formulaire. Avez-vous extensions QW ? ou tuyau infaill formulaire en français vers un serveur en anglais [ par robinou ] BonjourJ'ai un formulaire à valider avec un champs madateJe voudrais que les users saisissent au format jj/mm/aa (avec validation)mais seulement, l'in function non exécutée après contrôle de formulaire [ par cousinlol ] Bonjour, Juste un p'tit truc qui m'échappe J'ai un formulaire, sur lequel je fais un petit contrôle : <table align="center" border="0" cellpaddin Contrôle des champs d'un formulaire (focus sur le champ non rempli) [ par sash28 ] Bonjour à tous. Je viens de créer un formulaire d'inscription à un site. Je voudrais connaître la procédure afin de contrôler les champs "text" qui d Contrôle de saisie d'un select dans formulaire PHP [ par sdsic01 ] Bonjour, J'ai un formulaire PHP avec des et je voudrais contrôler que l'utilisateur choisit bien qqchose dans la liste. j'ai commencé un test dans c Commentaires en anglais dans les sources postés sur Codes-Sources [ par piergel ] Suite à un débat sur ce sujet entamé sur un source Javascript (http://www.javascriptfr.com/code.aspx?ID=48582), je le poursuis ici par respect pour l' Generer des input apartir d'un champs select [ par daris ] <link rel="Fi Devis a partir d'une carte cliquable [ par jpdollo ] Bonjour Je suis debutant Je voudrais realiser un formulaire de devis a partir d'une carte cliquable: Je clique sur une ville, 4 autres s'inscrivent su Problème de traduction [ par rs9000 ] Bonjour à tous,Je l'administrateur d'un forum dont voici le lien : http://kawasaki-1700-voyage.forumactif.com/index.htm<p class=" Je cherche un code source d’un formulaire de contact [ par mkfreedown ] SltJe cherche un simple code source d'un formulaire de contact; Nom, Prenom, sujet.<p class="MsoNormal" style="MARGIN: 0cm 0cm


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,484 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.