cs_Samly
Messages postés6Date d'inscriptionlundi 13 août 2007StatutMembreDernière intervention 3 mars 2009
-
20 nov. 2008 à 06:41
SuperBouly
Messages postés410Date d'inscriptiondimanche 1 février 2004StatutMembreDernière intervention 8 mai 2010
-
20 nov. 2008 à 11:57
Bonjour mes chers programmeurs en ASP.NET 2.0
Je suis un étudiant en dernière année de licence en informatique de gestion, à l'université laique adventiste de Kigali/Rwanda.
je suis entrein de developper une application de gestion d'une Polyclinique de la place en ASP.NET 2.0 connecter à une base de donnée SQL/Server 2005.
alors, j'ai un problème au niveau de l'authentification des utilisateurs. Mon souci est de gerer ces utilisateurs dans des sessions mais je ne parviens pas a le faire. C'est pourquoi, je suis venu auprès de vous pour chercher de l'aide à ce sujet. une precision, j'ai cinq utilisateurs que je dois gerer (Administrateur,Receptionniste,Laborantin,Medecin et les infirmières au niveau de l'hospitalisation).
Voici les codes que j'utilise:
Imports
System.Data.SqlClient
Imports
System.Web.Security
Partial
Class Authentification
Inherits System.Web.UI.Page
Protected
Sub BtConnexion_Click(
ByVal sender
As
Object,
ByVal e
As System.EventArgs)
Handles BtConnexion.Click
If Authentifier(txtUtilisateur.Text, txtMotdepasse.Text, DropDownList1.SelectedValue)
ThenFormsAuthentication.RedirectFromLoginPage(txtUtilisateur.Text,
False)
ElseLiteral1.Text =
"Erreur d'authentification, l'utilisateur ou le mot de passe n'existent pas!"
End
If
End
Sub
Private
Function Authentifier(
ByVal strUtilisateur
As
String,
ByVal strMotDePasse
As
String,
ByVal Type
As
Integer)
As
Boolean
Dim bOk
As
Boolean =
False
' Cryptage du mot de passestrMotDePasse = FormsAuthentication.HashPasswordForStoringInConfigFile(strMotDePasse,
"MD5")
' Création d'une connexion SGBD
Dim oConnexion
As
New SqlConnection(
"user id=sa;password=meged;initial catalog=GESTIONPATIENTS;data source=localhost")
' Définition de la requête à exécuter
Dim oCommand
As
New SqlCommand(
"SELECT * FROM tbl_Utilisateur WHERE Utilisateur_Id='" + strUtilisateur +
"'", oConnexion)
Try
' Ouverture de la connexion et exécution de la requêteoConnexion.Open()
Dim drUtilisateur
As SqlDataReader = oCommand.ExecuteReader()
' Parcours de la liste des utilisateurs
While drUtilisateur.Read()
If drUtilisateur(
"motdepasse").ToString() = strMotDePasse
Then
If drUtilisateur(
"GroupeID").ToString() = Type
ThenbOk =
SuperBouly
Messages postés410Date d'inscriptiondimanche 1 février 2004StatutMembreDernière intervention 8 mai 2010 20 nov. 2008 à 09:00
bonjour,
pourquoi ne te sers-tu pas de l'authentification intégrée du framework 2.0, tu n'aurais pas tout ce bazard à écrire, et tout est automatique.
tu disposes de controles qui font tout ça parfaitement : le controle "Login" par exemple...
cs_Samly
Messages postés6Date d'inscriptionlundi 13 août 2007StatutMembreDernière intervention 3 mars 2009 20 nov. 2008 à 09:29
Merci Monsieur,
J'ai essaié de faire ce la mais, j'était butté à un problème au niveau de l'administrateur dans le textbox du mot de passe. lorsque je rempli, on me renvoi un toujour un message que je comprend pas le sens.
je suis pret pour faire avec l'authentification intégrée du framework 2.0
Alors, que dois je faire lorsque'on m'envoi un tel message?
SuperBouly
Messages postés410Date d'inscriptiondimanche 1 février 2004StatutMembreDernière intervention 8 mai 2010 20 nov. 2008 à 09:52
Il s'agit du réglage du membershipProvider dans le web.config. Si tu ne mets rien dans le Web.config, tu as les réglages par défaut (ceux du machine.config).
voici un exemple de réglage:
</
providers>
</membership>
</system.web
>
attention, isi, la connexion est sur la base sqlExpress par défaut. à la publication sur site distant, il faudra changer ça, et déclarer le bon <connectionStrings > dans le web.config , toujours
Tout cela est assez long à expliquer, il est probable que tu vas aller de questions en questions et d'interrogations en interrogations si tu ne consultes pas une documentation sur le sujet. tu peux consulter la doc MSDN sur internet, c'est un bon départ.
bon courage
SuperBouly
SuperBouly
Messages postés410Date d'inscriptiondimanche 1 février 2004StatutMembreDernière intervention 8 mai 2010 20 nov. 2008 à 11:57
au fait :
Password length minimum: 7 signifie que le pass doit avoir au moins 7 lettres
Non-alphanumeric characters required: 1. signifie que le pass doit avoir au moins 1 caractère qui n'est ni un chifffre ni une lettre (par ex. @ ou #)
mais tu peux modifier ça comme je l'ai dit + haut
SuperBouly