|
Iniciado por boucherc, 30,mar. 2006 13:25 - 7 respuestas |
| |
| | | |
|
| |
Publicado el 30,marzo 2006 - 13:25 |
Bonjour a tous!
Voila j'ai cette erreur lorsque j execute ma fenetre: Erreur à la ligne 24 du traitement Clic sur BTN_OK. La dimension 1 du tableau possède 10 élément(s) et vous tentez d'accéder à l'élément 11.
voici mon code: j est un entier = 1 TANTQUE ((tabVar_pseudo[j] <> SAIS_PSEUDO ET tabVar_mdp[j] <> SAIS_MDP) OU j<=i) j++ FIN
( ici " i " vaut 2, il est calculé plus haut dans mon prog. )
déclaration de mes tableaux: tabVar_pseudo est un tableau fixe de 10 chaînes tabVar_mdp est un tableau fixe de 10 chaînes
merci d'avance. |
| |
| |
| | | |
|
| | |
| |
Publicado el 30,marzo 2006 - 16:43 |
salut
faudrait-il pas remplacer 'OU j<=i' par 'ET j<=i' ?
car tantque la condition 'tabVar_pseudo[j] <> SAIS_PSEUDO ET tabVar_mdp[j]' est vrai il boucle et arrivé à la 11ième occurrence ben ca plante
sinon il faut faire :
TANTQUE j<11 _ET_ ((tabVar_pseudo[j] <> SAIS_PSEUDO ET tabVar_mdp[j] <> SAIS_MDP) OU j<=i) j++ FIN
surtout mettre bien '_ET_' et non pas 'ET' |
| |
| |
| | | |
|
| | |
| |
Publicado el 30,marzo 2006 - 16:43 |
Dans sa contribution <442ceb23$1@news.pcsoft.fr>, boucherc@info.iut-amiens.fr racontait :
Bonjour a tous!
Voila j'ai cette erreur lorsque j execute ma fenetre: Erreur à la ligne 24 du traitement Clic sur BTN_OK. La dimension 1 du tableau possède 10 élément(s) et vous tentez d'accéder à l'élément 11.
voici mon code: j est un entier = 1 TANTQUE ((tabVar_pseudo[j] <> SAIS_PSEUDO ET tabVar_mdp[j] <> SAIS_MDP) OU j<=i) j++ FIN
( ici " i " vaut 2, il est calculé plus haut dans mon prog. )
déclaration de mes tableaux: tabVar_pseudo est un tableau fixe de 10 chaînes tabVar_mdp est un tableau fixe de 10 chaînes
merci d'avance.
Bonjour, Je pense que tu t'es légèrement trompé sur les conditions de ton TANTQUE car dans ton code tu continues a boucler si UNE seule des deux conditions est vraie Dans ton cas, si j > i, tu continues quand meme a boucler car les pseudo et mdp saisis sont différents de ceux du tableau (le couple de valeurs saisies n'existent pas dans le tableau)
Il faudrait plutot écrire :
j est un entier = 1 TANTQUE ((tabVar_pseudo[j] <> SAIS_PSEUDO ET tabVar_mdp[j] <> SAIS_MDP) ET j<=i) j++ FIN
-- Lionel
mailto:lionel.breil*NOSPAM*@gmail.com (retirer *NOSPAM* pour m'écrire) |
| |
| |
| | | |
|
| | |
| |
Publicado el 30,marzo 2006 - 17:05 |
effectivement maintenant ca passe! merci!
par contre, maintenant si je met un login et un mdp se trouvant dans ma table, il me mon message d'erreur si quelqu'un rentre un mauvais login ou mdp
voici mon code, ca vous sera plus parlant:
CONNEXION est une chaîne CONNEXION = SQLConnecte("CODIF", "sa", "sa", "CODIF", "hODBC")
REQ est une chaîne = [ SELECT login, mdp FROM Login ] SQLExec(REQ, "AUTH") tabVar_pseudo est un tableau fixe de 10 chaînes tabVar_mdp est un tableau fixe de 10 chaînes i est un entier = 0
TANTQUE SQLAvance("AUTH") = 0 i++ tabVar_pseudo[i] = SQLLitCol("AUTH",1) tabVar_mdp[i] = SQLLitCol("AUTH",2) FIN
j est un entier = 1 TANTQUE ((tabVar_pseudo[j] <> SAIS_PSEUDO ET tabVar_mdp[j] <> SAIS_MDP) ET j<=i) j++ FIN
SI (tabVar_pseudo[j] = SAIS_PSEUDO ET tabVar_mdp[j] = SAIS_MDP) ALORS Info(" Bienvenue dans CODIF !") SINON Info(" Login et/ou mot de passe erroné(s) !") FIN
SQLFerme("AUTH") |
| |
| |
| | | |
|
| | |
| |
Publicado el 30,marzo 2006 - 17:29 |
pourquoi mémoriser tous les login dans un tableau et boucler pour trouver le bon ?
n'est-il pas plus simple de faire
REQ est une chaîne = [ SELECT mdp FROM Login where pseudo='"+sais_pseudo+'" ] SQLExec(REQ, "AUTH") sqlpremier("AUTH") si pas sql.endehors alors si sqlcol("AUTH",1)=SAIS_MDP alors info("Bienvenue") sinon info("Mot de passe incorrect") fin sinon info("pseudo inconnu") fin
question subsidiaire : quelle base est connecté à l'appli ? |
| |
| |
| | | |
|
| | |
| |
Publicado el 30,marzo 2006 - 17:57 |
pourquoi memoriser tout ca dans un tableau? je ne sais pas! je suis pas un developpeur! je suis un admin rezo en stage qui doit realiser une appli avec un agl que je ne connais pas! d ou mon niveau en prog! lol
c'est une base de données techniques spécifiques aux produits "produit" par mon entreprise dans laquelle j ai rajouté une table avec des login et des mdp.
sinon ton code me répond 'pseudo inconnu' meme si c est un pseudo de la table login, comme avec mon code d'ailleurs! lol
merci de ton aide! |
| |
| |
| | | |
|
| | |
| |
Publicado el 30,marzo 2006 - 18:24 |
tu as peut-être des majuscules et des minuscules qui ne correspondent pas ma question était en fait : quelle type de base ? oracle, sqlserver .... |
| |
| |
| | | |
|
| | |
| |
Publicado el 30,marzo 2006 - 18:51 |
non j'ai bien regardé aux majuscule ou aux minuscules, ou accents ...
sql server! |
| |
| |
| | | |
|
| | | | |
| | |
|