Page 1 sur 1

[R] Vérifier les champs de saisie avant execution

Posté : mar. 07 févr. 2012 12:53
par Laddy
Bonjour à tous

je me trouve vers vous pour m'aider à y voir plus clair.

J'essaie de vérifier tous les champs de saisie de mes input mais je n'y arrive pas, à chaque fois, si j'entre une chose, il ne vérifie pas la suite.
J'ai essayé de simplifier mon code à une listview (j'essaie d'apprendre mysql)

Mon souci est de savoir comment faire pour :

verifier que le nom n'est pas vide puis continuer
vérifier que le champ prénom n'est pas vide si oui msgbox puis continuer
vérifier que le champ mail contient @ si oui msgbox puis continuer
vérifier que le champ mobile comporte 10 chiffres si non msgbox puis continuer

corriger les champs manquants
et enfin valider la saisie si tout est ok.

Est ce quelqu'un pourrait me corriger ?
► Afficher le texteCode

Re: [..] Vérifier les champs de saisie avant execution

Posté : mar. 07 févr. 2012 13:54
par Strofe
Bonjour

Voici la fonction adaptée à mon sens
► Afficher le texte
A+

Re: [..] Vérifier les champs de saisie avant execution

Posté : mar. 07 févr. 2012 14:19
par mikell
On pourrait aussi l'envisager comme ça

Code : Tout sélectionner

Func Verified()
 Local $warning = ""
If GUICtrlRead($nom)  = "" Then $warning &= "Veuillez remplir le champ nom" & @crlf
If GUICtrlRead($prenom)  = "" Then $warning &= "Veuillez remplir le champ prénom" & @crlf
If not StringInStr(GUICtrlRead($mail), '(@)') Then $warning &= "email non valide"
If StringLen(GUICtrlRead($mobile)) <> "10" Then $warning &= "pas 10"
If $warning = "" Then 
    Return 
Else
    MsgBox(0, "erreur", $warning)
EndIf
EndFunc   ;==>Verified
 

Re: [..] Vérifier les champs de saisie avant execution

Posté : mar. 07 févr. 2012 14:53
par Laddy
Bonjour à tous deux

Strofe > je vais tester si c'est ok

mikell > ta solution est pas mal sauf que cette ligne ne fonctionne pas
If not StringInStr(GUICtrlRead($mail), '(@)') Then $warning &= "email non valide"
que je met un @ ou sans @ il me dit que pas valide.

Re: [..] Vérifier les champs de saisie avant execution

Posté : mar. 07 févr. 2012 15:12
par ZDS
Bonjour,

C'est normal que ça ne soit pas bon avec la commande de StringInStr(..., '(@)'), puisqu'il s'attend à voir un arobase entourée de parenthèses. StringInStr ne réagit pas avec une regExp. La syntaxe correcte est donc :

Code : Tout sélectionner

If not StringInStr(GUICtrlRead($mail), '@') Then $warning &= "email non valide"
A bientôt !

Re: [..] Vérifier les champs de saisie avant execution

Posté : mar. 07 févr. 2012 19:53
par mikell
:oops: encore un code écrit un peu vite... sorry

Re: [..] Vérifier les champs de saisie avant execution

Posté : mar. 07 févr. 2012 20:29
par Laddy
Pas de soucis Mikell
Merci ZDS

je testerai demain matin

Re: [R] Vérifier les champs de saisie avant execution

Posté : mer. 08 févr. 2012 13:20
par Laddy
Au passage j'ai une question les experts sql

dans ma table j'ai le champ mobile int(11) Null si je met des 0 dans le champ input, il n'apparaisse pas à l'affichage
je me retrouve avec des numéros de telephone tronqués.