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

ASP.NET Discussion :

formulaire d'authentification access


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de alicia26
    Inscrit en
    Avril 2007
    Messages
    321
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 321
    Par défaut formulaire d'authentification access
    bonjour à tous
    je développe une application web sous access et mon formulaire d'authentification est une liste déroulante qui liste tout les comptes utilisateurs et l'utilisateur n'a qu'à saisir un mot de passe par défaut(password),il est redirigé vers une page.aspx qui lui demande de créer un nouveau mot de passe.

    Pour l'instant,je bloque depuis 2 jours sur le formulaire d'authentification,je récupère bien mes comptes utilisateurs mais lorsque je clique sur le bouton "Se connecter",cette erreur s'affiche
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ExecuteReader nécessite une connexion ouverte et disponible. La connexion est actuellement fermée.
    Pour dire vrai,je ne sais comment rediriger l'utilisateur qui se connecte pour la première fois? quelqu'un aurait t-il une idée?

  2. #2
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    C'est un problème de connexion à la base de données là

  3. #3
    Membre éclairé Avatar de alicia26
    Inscrit en
    Avril 2007
    Messages
    321
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 321
    Par défaut
    je crois bien,mais je ne sais par où commencer
    j'ai essayé de reprendre et voici mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
     
    Partial Class password
        Inherits System.Web.UI.Page
     
     
        Public Class AccessMembershipProvider
            Inherits MembershipProvider
            '---for database access use---
            Private connStr As String
            Private comm As New Data.OleDb.OleDbCommand
            Private _requiresQuestionAndAnswer As Boolean
            Private _minRequiredPasswordLength As Integer
            Public Overrides Sub Initialize(ByVal name As String, ByVal config As System.Collections.Specialized.NameValueCollection)
                '===retrives the attribute values set in 
                'web.config and assign to local variables===
                If config("requiresQuestionAndAnswer") = "true" Then _
                _requiresQuestionAndAnswer = True
                connStr = config("connectionString")
                MyBase.Initialize(name, config)
            End Sub
            Public Overrides Property ApplicationName() As String
                Get
                End Get
                Set(ByVal value As String)
                End Set
            End Property
            Public Overrides Function ChangePassword(ByVal username As String, ByVal oldPassword As String, ByVal newPassword As String) As Boolean
            End Function
            Public Overrides Function ChangePasswordQuestionAndAnswer(ByVal username As String, ByVal password As String, ByVal newPasswordQuestion As String, ByVal newPasswordAnswer As String) As Boolean
            End Function
            Public Overrides Function CreateUser(ByVal username As String, ByVal password As String, ByVal email As String, ByVal passwordQuestion As String, ByVal passwordAnswer As String, ByVal isApproved As Boolean, ByVal providerUserKey As Object, ByRef status As System.Web.Security.MembershipCreateStatus) As System.Web.Security.MembershipUser
                Dim conn As New Data.OleDb.OleDbConnection(connStr)
                '----perform checking all the relevant checks here
                ' and set the status of the error accordingly, e.g.:
                'status = MembershipCreateStatus.InvalidPassword
                'status = MembershipCreateStatus.InvalidAnswer
                'status = MembershipCreateStatus.InvalidEmail
                '---add the user to the database
                Try
                    conn.Open()
                    Dim sql As String = "INSERT INTO Membership VALUES (" & _
                    "@username, @password, @email, " & _
                    " @passwordQuestion, @passwordAnswer )"
                    Dim comm As New Data.OleDb.OleDbCommand(sql, conn)
                    comm.Parameters.AddWithValue("@username", username)
                    comm.Parameters.AddWithValue("@password", password)
                    comm.Parameters.AddWithValue("@email", email)
                    comm.Parameters.AddWithValue("@passwordQuestion", passwordQuestion)
                    comm.Parameters.AddWithValue("@passwordAnswer", passwordAnswer)
                    Dim result As Integer = comm.ExecuteNonQuery()
                    conn.Close()
                    status = MembershipCreateStatus.Success
                    Dim user As New MembershipUser("AccessMembershipProvider", username, Nothing, email, passwordQuestion, Nothing, True, False, Now, Nothing, Nothing, Nothing, Nothing)
                    Return user
                Catch ex As Exception
                    '---failed; determine the reason why
                    status = MembershipCreateStatus.UserRejected
                    Return Nothing
                End Try
            End Function
            Public Overrides Function DeleteUser(ByVal username As String, ByVal deleteAllRelatedData As Boolean) As Boolean
            End Function
            Public Overrides ReadOnly Property EnablePasswordReset() As Boolean
                Get
                End Get
            End Property
            Public Overrides ReadOnly Property EnablePasswordRetrieval() As Boolean
                Get
                End Get
            End Property
            Public Overrides Function FindUsersByEmail(ByVal emailToMatch As String, ByVal pageIndex As Integer, ByVal pageSize As Integer, ByRef totalRecords As Integer) As System.Web.Security.MembershipUserCollection
            End Function
            Public Overrides Function FindUsersByName(ByVal usernameToMatch As String, ByVal pageIndex As Integer, ByVal pageSize As Integer, ByRef totalRecords As Integer) As System.Web.Security.MembershipUserCollection
            End Function
            Public Overrides Function GetAllUsers(ByVal pageIndex As Integer, ByVal pageSize As Integer, ByRef totalRecords As Integer) As System.Web.Security.MembershipUserCollection
            End Function
            Public Overrides Function GetNumberOfUsersOnline() As Integer
            End Function
            Public Overrides Function GetPassword(ByVal username As String, ByVal answer As String) As String
            End Function
            Public Overloads Overrides Function GetUser(ByVal username As String, ByVal userIsOnline As Boolean) As System.Web.Security.MembershipUser
            End Function
            Public Overloads Overrides Function GetUser(ByVal providerUserKey As Object, ByVal userIsOnline As Boolean) As System.Web.Security.MembershipUser
            End Function
            Public Overrides Function GetUserNameByEmail(ByVal email As String) As String
            End Function
            Public Overrides ReadOnly Property MaxInvalidPasswordAttempts() As Integer
                Get
                End Get
            End Property
            Public Overrides ReadOnly Property MinRequiredNonAlphanumericCharacters() As Integer
                Get
                End Get
            End Property
            Public Overrides ReadOnly Property MinRequiredPasswordLength() As Integer
                Get
                End Get
            End Property
            Public Overrides ReadOnly Property PasswordAttemptWindow() As Integer
                Get
                End Get
            End Property
            Public Overrides ReadOnly Property PasswordFormat() As System.Web.Security.MembershipPasswordFormat
                Get
                End Get
            End Property
            Public Overrides ReadOnly Property PasswordStrengthRegularExpression() As String
                Get
                End Get
            End Property
            Public Overrides ReadOnly Property RequiresQuestionAndAnswer() As Boolean
                Get
                    If _requiresQuestionAndAnswer = True Then
                        Return True
                    Else
                        Return False
                    End If
                End Get
            End Property
            Public Overrides ReadOnly Property RequiresUniqueEmail() As Boolean
                Get
                End Get
            End Property
            Public Overrides Function ResetPassword(ByVal username As String, ByVal answer As String) As String
            End Function
            Public Overrides Function UnlockUser(ByVal userName As String) As Boolean
            End Function
            Public Overrides Sub UpdateUser(ByVal user As System.Web.Security.MembershipUser)
            End Sub
            Public Overrides Function ValidateUser(ByVal username As String, ByVal password As String) As Boolean
                Dim conn As New Data.OleDb.OleDbConnection(connStr)
                Try
                    conn.Open()
                    Dim sql As String = "Select * From Membership WHERE " & _
                    "username=@username AND password=@password"
                    Dim comm As New Data.OleDb.OleDbCommand(sql, conn)
                    comm.Parameters.AddWithValue("@username", username)
                    comm.Parameters.AddWithValue("@password", password)
                    Dim reader As Data.OleDb.OleDbDataReader = comm.ExecuteReader
                    If reader.HasRows Then
                        Return True
                    Else
                        Return False
                    End If
                    conn.Close()
                Catch ex As Exception
                    Console.Write(ex.ToString)
                    Return False
                End Try
            End Function
        End Class
     
     
    End Class
    et voici le message qu'il m'affiche
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Impossible de charger le type 'AccessMembershipProvider'.

  4. #4
    Membre éclairé Avatar de alicia26
    Inscrit en
    Avril 2007
    Messages
    321
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 321
    Par défaut
    Salut à tous!
    depuis une semaine,je rame sur ce bout de code qui m'affiche l'erreur suivante:
    'exception OleDbException n'a pas été gérée par l'utilisateur
    en surlignant cette ligne
    myreader As Data.OleDb.OleDbDataReader = Mycommand.ExecuteReader()
    merci pour votre aide!!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
     
    Imports System.Data
    Imports System.Data.DataSet
     
    Imports System
    Imports System.Data.OleDb
    Imports Microsoft.VisualBasic
     
    Partial Class Login
        Inherits System.Web.UI.Page
     
        Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
     
        End Sub
     
     
    Sub BtnSubmit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnSubmit.Click
            'Dim MyConnection As New System.Data.OleDb.OleDbConnection()
            Dim MyConnection As Data.OleDb.OleDbConnection = New Data.OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data source=D:\Visual Studio 2005\WebSites4\App_Data\Bdd.mdb")
            'Dim MyConnexion As OleDbConnection = New OleDbConnection
            Dim Mycommand As Data.OleDb.OleDbCommand = MyConnection.CreateCommand()
     
            '   Mycommand.CommandText = " select * from employés where password=@passwd and email=@email "
     
            '   Mycommand.Parameters.Add("@DropDownList2", OleDbType.VarChar, 40)
            '  Mycommand.Parameters.Add("@passwd", OleDbType.VarChar, 15)
     
     
            ' Mycommand.Parameters("@passwd").Value() = passwd.Text
     
     
            '  Mycommand.Parameters("@DropDownList2").Value() = DropDownList2.SelectedValue
            Mycommand.CommandText = " select * from employés where password = ? and email=?"
     
     
     
            Mycommand.Parameters.Add("passwd", OleDbType.VarChar, 15)
     
            Mycommand.Parameters.Add("@DropDownList2", OleDbType.VarChar, 40)
     
            Mycommand.Parameters("passwd").Value() = passwd.Text
            Mycommand.Parameters("@DropDownList2").Value() = DropDownList2.SelectedValue
     
            MyConnection.Open()
     
            Dim myreader As Data.OleDb.OleDbDataReader = Mycommand.ExecuteReader()
            While myreader.Read
                Dim Log As String = myreader.GetString(0)
                Dim Pwd As String = myreader.GetString(1)
     
                If DropDownList2.SelectedValue = "@passwd" And passwd.Text = "@email" Then
                    Response.Redirect("page1.aspx")
     
                Else
                    Response.Redirect("page2.aspx")
                End If
            End While
      myreader.Close()
     
            MyConnection.Close()
     
        End Sub
     
     
    End Class

Discussions similaires

  1. ouvrir un formulaire sans ouvrir access
    Par Vincent623 dans le forum IHM
    Réponses: 25
    Dernier message: 28/12/2006, 09h34
  2. Impression d'un formulaire complet sous Access
    Par Bercud dans le forum Access
    Réponses: 11
    Dernier message: 30/05/2006, 17h00
  3. Créer un formulaire d'authentification
    Par horri dans le forum Langage
    Réponses: 6
    Dernier message: 09/05/2006, 19h22
  4. Aide sur formulaire d'authentification
    Par jeffrey_06 dans le forum Langage
    Réponses: 3
    Dernier message: 04/04/2006, 11h26
  5. formulaire ASP bdd access recherche
    Par ghita269 dans le forum ASP
    Réponses: 8
    Dernier message: 19/11/2005, 23h57

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