cs_Naevis
Messages postés15Date d'inscriptionsamedi 22 novembre 2008StatutMembreDernière intervention10 janvier 2009
-
28 déc. 2008 à 21:11
cs_Naevis
Messages postés15Date d'inscriptionsamedi 22 novembre 2008StatutMembreDernière intervention10 janvier 2009
-
29 déc. 2008 à 13:47
Salut à tous,
Je cherche depuis un bon moment. Sur VB.net, comment créer une page (form) avec un login et un mot de passe.
J'ai une base de donnée access ou j'ai pris des users et des mdp.
Ce que je souhaiterais, c'est pouvoir rentrer un login et un mdp et grâce à un contrôle (bouton), Il y a une vérification qui se fait.
J'ai cherché un peu mais pas de lumière au bout.
Après divers tests, j'ai décidé de tout mettre dans une listbox. et mettre une textbox au dessus.
Le truc qu'y a c'est que je ne sais pas comment faire pour que la textbox puisse lire les données (items) de la listbox et dire si c'est OK.
J'ai regardé rien que avec des textboxs mais sans succès.
Est-ce que quelqu'un pourrait m'aider???
cs_fauve
Messages postés661Date d'inscriptionvendredi 2 décembre 2005StatutMembreDernière intervention23 mars 20118 29 déc. 2008 à 13:39
Oups, je viens de voir çà, je t'avais pas mis la bonne version pour le code ci-dessus, voici la bonne :
' ListBox1 > Contient les identifiants des utilisateurs
' ListBox2 > Contient les mots de passe des utilisateurs
' TextBox1 > Identifiant entré par l'utilisateur
' TextBox2 > Mot de passe entré par l'utilisateur
' Variable indiquant si l'authentification a été
' réussie
Dim userOK As Boolean = False
' Boucle sur tous les items de ListBox1
For nb As Integer = 0To ListBox1.Items.Count - 1
' On teste si l'utilisateur existe
If ListBox1.Items.Contains(TextBox1.Text) = False Then
' L'utilisateur n'existe pas
MsgBox( "Utilisateur inconnu" )
Exit For Else ' Code exécuté si l'utilisateur existe
'
' Teste si l'identifiant de l'utilisateur correspond
' à son mot de passe
If ListBox1.Items(nb) = TextBox1.Text And ListBox2.Items(nb) = TextBox2.Text Then
MsgBox( "Authentification réussie" )
userOK = True End If End If
' Teste si l'identifiant et le mot de passe concorde pas et que le
' dernier utilisateur a été vérifié If userOK False And ListBox1.Items.Count - <gras>1 </gras> nb Then MsgBox( "Erreur : Mot de passe incorrect" )
End If
cs_Naevis
Messages postés15Date d'inscriptionsamedi 22 novembre 2008StatutMembreDernière intervention10 janvier 2009 29 déc. 2008 à 11:46
J'ai testé.
J'y suis presque mais le problème, c'est que le Listbox1.Items(0) me retourne que une valeur.
Donc si j'ai plusieurs utilisateurs (nombre indifini) bin je suis coincé.
ListBox1.Items.Count, j'ai eu des problèmes au début car il faisait référence à une variable double....
Donc j'ai décidé de nommé deux variables, une pour user et une por mdp.
J'ai assigné le listbox*.Items.count
Et j'ai placé les deux dans un IF then else.
Mais je retrouve le même problème que Listbox*.Items(0).
Je vais essayer dans une boucle, je ne sais pas encore laquelle ("jusqu'a" je crois que c'est mieux)
Mais après ce serait bien que je fasse correspondre les deux listboxes. J'entend par là que Si l'items 1 de la listbox 1
et que l'items1 de la listbox2 sont Correct alors ouvrir form suivante. Idem pour chaque items. J'aimerais qu'il y ai un lien entre chacun de c'est items. Le 1 va avec le 1, le 2 va avec le 2,....
Je vais continuer à chercher.
cs_bernardo67
Messages postés41Date d'inscriptiondimanche 28 mai 2006StatutMembreDernière intervention20 janvier 2009 29 déc. 2008 à 13:11
Naevis,
J'ai pas trop bien compris ce que tu souhaite faire, mais ça me paraît être une grosse usine à gaz pour un truc simple...
Peut-être peux-tu poster des aperçus de ton from?
(Il existe un LoginForm sous visual studio, peut-être que ça peut t'aider...)
cs_fauve
Messages postés661Date d'inscriptionvendredi 2 décembre 2005StatutMembreDernière intervention23 mars 20118 29 déc. 2008 à 13:22
Voici un moyen comment y parvenir, ça fonctionne très bien chez moi :
' ListBox1 > Contient les identifiants des utilisateurs
' ListBox2 > Contient les mots de passe des utilisateurs
' TextBox1 > Identifiant entré par l'utilisateur
' TextBox2 > Mot de passe entré par l'utilisateur
' Boucle sur tous les items de ListBox1
For nb As Integer = 0 To ListBox1.Items.Count - 1
' On teste si l'utilisateur existe
If ListBox1.Items.Contains(TextBox1.Text) = False Then ' L'utilisateur n'existe pas
MsgBox( "Utilisateur inconnu" )
Exit For Else ' Code exécuté si l'utilisateur existe
'
' Teste si l'identifiant de l'utilisateur correspond
' à son mot de passe If ListBox1.Items(nb) TextBox1.Text And ListBox2.Items(nb) TextBox2.Text Then ' L'identifiant et le mot de passe concorde
MsgBox( "Authentification réussie" )
Exit For Else ' L'identifiant et le mot de passe concorde pas
MsgBox("Erreur : Mot de passe incorrect")
Exit For End If End If