Empecher la saisie d'un caractere

Résolu
cs_rony Messages postés 9 Date d'inscription lundi 7 janvier 2002 Statut Membre Dernière intervention 26 octobre 2005 - 4 oct. 2005 à 14:21
cs_rony Messages postés 9 Date d'inscription lundi 7 janvier 2002 Statut Membre Dernière intervention 26 octobre 2005 - 4 oct. 2005 à 19:51
bonjour,

j'ai le code suivant qui vérifie que le champ text (nom) envoyer par le formulaire contient bien: le caractere @


Code:
,
----

if request.form("nom") = instr (request.form("nom"),"@")=0 then

je souhaite faire l'inverse c'est a dire empecher la saisie @ dans le champ nom

merci

rony

4 réponses

cs_Nurgle Messages postés 1642 Date d'inscription samedi 6 novembre 2004 Statut Membre Dernière intervention 28 avril 2011 4
4 oct. 2005 à 16:41
Salut,



ton code :

if request.form("nom") instr (request.form("nom"),"@") 0 then

en gros : if machin truc bidule then...(une triple condition ? )

De plus :

- Request.Form te renvoi une chaine de caractère

- 18 Instr(...) te renvoi un nombre.

- Et 0 te renvoi : un nombre !

Et comme tu t'en doutes, une chaine de caractère qui contient @ ne sera
jamais égale à un nombre, donc ta condition n'est jamais validée !
(enfin je crois...)

Conséquence : Cette condition ne teste rien !! (elle est toujours fausse...)



Il y a pleins de moyens de faire ce que tu veux . En voici un :



Pour tester si la chaine contient un @ :

If Request.Form("nom") <> Replace(Request.Form("nom"),"@","") Then

(tu test si la chaine est différente d'elle-même, mais sans les @ !)



Pour tester si la chaine ne contient pas un @ :

If Request.Form("nom") = Replace(Request.Form("nom"),"@","") Then
(tu test cette fois si la chaine est égale à elle-même sans les @ !)



...je me souviens qu'il y a un moyen plus simple...mais je me souviens plus exactement lequel (ça va me revenir...)




Nurgle
3
taillecrayon Messages postés 109 Date d'inscription vendredi 30 janvier 2004 Statut Membre Dernière intervention 23 novembre 2010
4 oct. 2005 à 19:37
if instr(request.form("nom"),"@")<>0 then
il y a @ ds la chaine
else
ça y est pas
end if
3
cs_Nurgle Messages postés 1642 Date d'inscription samedi 6 novembre 2004 Statut Membre Dernière intervention 28 avril 2011 4
4 oct. 2005 à 19:47
exactement...

finalement j'ai pas fini par retrouver (ou du moins, tu as trouvé avant moi, taillecrayon)



bon bah, rony, je crois que ça répond à ta question ?





Nurgle
0
cs_rony Messages postés 9 Date d'inscription lundi 7 janvier 2002 Statut Membre Dernière intervention 26 octobre 2005
4 oct. 2005 à 19:51
bjr

Ok c'est tout bon

merci

rony
0
Rejoignez-nous