IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

valeur entre 0000000a et 9999999z


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné Avatar de niglo
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Bas Rhin (Alsace)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 379
    Par défaut valeur entre 0000000a et 9999999z
    Bonjour,

    Je voudrais savoir comment faire pour savoir si une string est comprise entre 0000000a et 9999999z ?

    J'ai essayé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <% Dim cpt 
    				For cpt=0 to Ubound(tableauID)%>
    				if ("<%=ucase(tableauID(cpt))%>" == id.toUpperCase())
    				{ testID=1; }
    				else
    				{
    				    <%For i=1 to 7%>
    					if (!((("<%=tableauID(cpt)%>").charAt(<%=i%>) >= "0")&&(("<%=tableauID(cpt)%>").charAt(<%=i%>) <= "9")))
    								{ testID=2; }
    							<%next%>
    							if (!((("<%=tableauID(cpt)%>").charAt(8) >= 'A')&&(("<%=tableauID(cpt)%>").charAt(8) <= 'Z')))
    								{ testID=2; }
    						}
    				<%Next%>
    Mais ca me dit que ma chaine n'est jamais valide
    J'ai essayé avec for i=0 to 6, mais ca ne fonctionne pas non plus.

  2. #2
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 347
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 347
    Billets dans le blog
    17
    Par défaut
    Donne-nous ton JS plutôt que ce mix assez immonde faut bien le dire

  3. #3
    Membre chevronné Avatar de niglo
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Bas Rhin (Alsace)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 379
    Par défaut
    OK. Désolé

    Alors donc je récupère une valeur dans un formulaire, et je voudrais qu'elle soit comprise entre 0000000a et 9999999z !
    Donc avant de soumettre mon formulaire, je voudrais vérifier si cette valeur est correcte.

    Mon algo était le suivant :
    pour les 7 premiers caracteres, je regarde 0<=caractere<=9
    et pour le dernier caractere, je regarde a<=caractere<=z

    J'extrais les carateres avec charat().
    J'ai fais une boucle en asp, car je ne sais pas en faire en java.

    Comment feriez vous pour faire cette comparaison ??
    Merci

  4. #4
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 347
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 347
    Billets dans le blog
    17
    Par défaut
    Citation Envoyé par niglo
    J'ai fais une boucle en asp, car je ne sais pas en faire en java
    Faut pas oublier que JS et ASP ne s'exécutent pas en même temps : JS chez le client, ASP sur le serveur. Donc là forcément ça risque pas de fonctionner.
    Les boucles for( ) JavaScript ont la même forme que les boucles for( ) C/PHP/etc.

    for i = 1 to 10 step 1 ... => for ( i = 1 ; i <= 10 ; i++ ) { ...

    Autrement ton algo m'a l'air bon.

  5. #5
    Membre chevronné Avatar de niglo
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Bas Rhin (Alsace)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 379
    Par défaut
    D'accord merci pour l'info du for !!

    Alors je fais donc comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    For (cpt=0,<%=Ubound(tableauID)%>,cpt++)
    {
    if (!((parseint("<%=ucase(tableauID(cpt))%>") >= 0) &&
       (parseint("<%=ucase(tableauID(cpt))%>") <= 9999999)))
                    { testID=2; }
    if (!((("<%=tableauID(cpt)%>").charAt(7) >= A') &&
       (("<%=tableauID(cpt)%>").charAt(7) <= 'Z')))
    		{ testID=3; }
    }
    J'ai trouvé parseint qui permet d'extraire la partie entière d'une chaine de caractères et je compare cet extrait avec 0 et 9999999 !
    Ensuite, je compare le dernier caractère pour savoir si il est compris entre a et z.
    Je suis obligé d'utiliser des bouts de codes asp car le tableauID résulte d'une requête et je ne vois pas comment faire autrement.
    Si quelqu'un a une idée ??

    [EDIT ] Mais ce code ne fonctionne pas car cpt est une variable java et je dois l'utiliser dans mon tableau asp !!!
    Comment faire ????

  6. #6
    Expert confirmé

    Avatar de denisC
    Profil pro
    Développeur Java
    Inscrit en
    Février 2005
    Messages
    4 050
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Service public

    Informations forums :
    Inscription : Février 2005
    Messages : 4 050
    Par défaut
    Bon, je m'insinue dans la conversation :
    Java <> JavaScript!!!!!

    ça n'a rien à voir. (enfin, pas grand chose). Le Java est un langage de programmation très complet compilé, alors que javaScript est un langage de script leger principalement utilisé dans les navigateurs web.

    Ceci dit, au vu de ton problème, je pense que la meilleure chose à faire serait que tu nous explique ce que tu cherches à faire.
    Pour information, ton script ASP tourne sur ton serveur IIS (la ou tu publie tes fichiers), alors que la partie JavaScript de la chose tourne sur le poste du client (celui qui regarde la page). Donc à priori, tu peux facilement utiliser une variable ASP pour générer un script JavaScript adapté (ce que tu fais dans ton script), mais tu ne peux pas utiliser à priori une variable JavaScript dans ton script ASP....

    Donc expliques ce que tu cherches à faire, et on trouvera une solution

    Pour ce qui est de vérifier ta chaine de caractère, tu as la solution. Je t'en propose une autre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    /^[\d]{6}[a-z]$/.test(chaine);
    Renvoie true si la chaine est de la forme 6 chiffres suivis d'une lettre minuscule (ce que tu cherche à faire)... Pas de boucles, juste une expression régulière 8) [/b]

  7. #7
    Membre chevronné Avatar de niglo
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Bas Rhin (Alsace)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 379
    Par défaut
    Citation Envoyé par denisC
    Pour ce qui est de vérifier ta chaine de caractère, tu as la solution. Je t'en propose une autre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    /^[\d]{6}[a-z]$/.test(chaine);
    Renvoie true si la chaine est de la forme 6 chiffres suivis d'une lettre minuscule (ce que tu cherche à faire)... Pas de boucles, juste une expression régulière 8) [/b]
    Bon pour java <> javascript, j'étais au courant merci , c'était juste pour écrire un peu moins. Bref.
    Sinon exécution javascript client et asp serveur je savais aussi.

    Ce que je veux faire c'est :
    Dans un formulaire, je demande la saisie d'un identifiant pour ajout dans ma bdd. Cet identifiant doit etre de la forme 0000000A (7chiffres et une lettre majuscule ou minuscule). Donc je voudrais savoir comment tester si ce que saisi l'utilisateur est correct (cad compris entre 0000000a et 9999999z).

    Ou dois je tester l'expression régulière ?? Dans ma fonction javascript c'est ca ??

    Merci du coup de main !

  8. #8
    Expert confirmé

    Avatar de denisC
    Profil pro
    Développeur Java
    Inscrit en
    Février 2005
    Messages
    4 050
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Service public

    Informations forums :
    Inscription : Février 2005
    Messages : 4 050
    Par défaut
    Désolé, mais ne connaissant pas ton niveau, j'ai préféré un peu tout réexpliquer.

    Donc, pour ce qui est de la vérification des identifiants utilisateurs, le mieux est comme d'habitude de faire les vérifications aux deux endroits (client et serveur).
    Pour la vérification coté client, sur le onsubmit de ton formulaire, tu fais le test avec l'expression régulière:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    /^[\d]{6}[a-zA-Z]$/.test(chaine);
    Pour le coté serveur, tu refais en ASP la même vérification, et typiquement tu auras d'autres vérifications à faire (est ce que nom d'utilisateur n'est pas déjà utilisé, etc...)

  9. #9
    Membre chevronné Avatar de niglo
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Bas Rhin (Alsace)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 379
    Par défaut
    OK merci je vais voir ca !
    Merci du coup de pouce

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VBA-E] Comparer les valeurs entre classeur
    Par Mut dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 26/03/2006, 12h32
  2. [PHP-JS] echange de valeur entre le javasript et le php
    Par cortex007 dans le forum Langage
    Réponses: 7
    Dernier message: 20/01/2006, 19h32
  3. Réponses: 5
    Dernier message: 27/09/2005, 17h25
  4. transfert de valeurs entre fonctions js et asp
    Par ericmart dans le forum ASP
    Réponses: 5
    Dernier message: 10/03/2005, 16h18
  5. Passage de valeurs entre fenêtres différentes
    Par Amnesiak dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 16/02/2005, 15h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo