Partage
  • Partager sur Facebook
  • Partager sur Twitter

Demande d'aide

vb.net avec base access accdb

16 février 2012 à 21:19:29

Bonjour a tous, tout d'abord un grand merci pour ce magnifique site d'aide.
Voilà,je suis un sous débutant en VB.Net 2010, avec quelques connaissances en base de données Access.
J'ai commencé un programme (avec une base accès en (accdb) avec login et mot de passe et code d'accès pour chaque utilisateur, permettant de pouvoir accéder ou non a certaine application et cela fonctionnant à merveille.

Voilà mon problème, quand je fais appel a changer le mot de passe de l'utilisateur, son login et mot de passe s'affichant bien avec le ID de la table mais dès que je veux changer le mot de passe, il me le change, mais,pas sur le bon utilisateur logué.

La base access étant bien chargé, mais, il m'enregistre le changement du mot de passe, sur la première ligne de la base.
Comment faire pour que l'enregistrement s’enregistre bien sur la ligne de l'utilisateur logué ????
Je joins le code que j'utilise.



Imports System
Imports System.Data
Imports System.Data.OleDb



Public Class Modpass
Dim con As New OleDb.OleDbConnection
Dim Place_Enregistrement As Integer
Dim ds As New DataSet
Dim Val_ID_Table As Integer
Dim Max_Enregistrements As Integer
Private Sub quitter_Click(sender As System.Object, e As System.EventArgs) Handles quitter.Click
Me.Close()
End Sub


Private Sub Modpass_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
'TODO: cette ligne de code charge les données dans la table 'DbDataSet.TableObjet'. Vous pouvez la déplacer ou la supprimer selon vos besoins.
Me.TableObjetTableAdapter.Fill(Me.DbDataSet.TableObjet)
con.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data source=db.accdb;"
Connexion()
Me.TxtLog.Text = user
End Sub

Private Sub Connexion()


Dim cmd As OleDb.OleDbCommand

Dim sql_tout_afficher As String
sql_tout_afficher = "SELECT * FROM TableObjet"


cmd = New OleDb.OleDbCommand(sql_tout_afficher, con)


cmd.Connection.Open()



Dim da As OleDb.OleDbDataAdapter = New OleDb.OleDbDataAdapter

da.SelectCommand = cmd

da.Fill(ds, "Liste_TableObjet")


cmd.Connection.Close()


Max_Enregistrements = ds.Tables("Liste_TableObjet").Rows.Count


If Max_Enregistrements = 0 Then
Modifier.Enabled = False


TxtPA.Text = ""

Else


Place_Enregistrement = 0

Navigation()
End If

End Sub
Private Sub Navigation()


Val_ID_Table = ds.Tables("Liste_TableObjet").Rows(Place_Enregistrement).Item(0)

'TxtLog.Text = ds.Tables("Liste_TableObjet").Rows(Place_Enregistrement).Item(1)
TxtPA.Text = ds.Tables("Liste_TableObjet").Rows(Place_Enregistrement).Item(3)

End Sub

Private Sub Modifier_Click(sender As System.Object, e As System.EventArgs) Handles Modifier.Click

Dim cmd As OleDb.OleDbCommand

Dim sql_modifier As String


sql_modifier = "UPDATE TableObjet SET MPasse=Val_modifier_MPasse where ID_Table=" & Val_ID_Table & ""


cmd = New OleDb.OleDbCommand(sql_modifier, con)


cmd.Parameters.AddWithValue("Val_modifier_MPasse", TxtPA.Text)


cmd.Connection.Open()

cmd.ExecuteReader()

cmd.Connection.Close()


MsgBox("Votre mot de passe a bien été modifié.")


ds.Clear()


Connexion()
End Sub



End Class

Je remercie d'avance ceux qui si intéresserons.
  • Partager sur Facebook
  • Partager sur Twitter
17 février 2012 à 10:25:10

Merci de ne pas poster plusieurs fois le même sujet. La suite ici.
  • Partager sur Facebook
  • Partager sur Twitter