Probleme de connection

Signaler
Messages postés
10
Date d'inscription
lundi 30 juillet 2007
Statut
Membre
Dernière intervention
6 avril 2009
-
Messages postés
3983
Date d'inscription
jeudi 14 juillet 2005
Statut
Membre
Dernière intervention
30 juin 2013
-
Salut les VB'iens ;)

je sais pas si quelqu'un peut m'aider,
mon programme doit verfier un login et un mot de pass dans base de données sql,

le code est

Dim sqlcon As New SqlConnection("Server=localhost ; DataBase=mailing ; Integrated Security=SSPI;")
sqlcon.Open()
Dim struser As String "Select login,password from administrateur where login @UserName"
Dim sqlcom As New SqlCommand(struser, sqlcon)
sqlcom.Parameters.AddWithValue("@UserName", Me.TextBox1.Text)
Dim dr As SqlDataReader
dr = sqlcom.ExecuteReader()

If dr.HasRows = False Then
MsgBox("Identifiant incorrect", MsgBoxStyle.Information, "Atention")
Me.TextBox1.Focus()
Exit Sub
End If


dr.Read()
If Me.TextBox1.Text dr("login") And Me.TextBox2.Text dr("password") Then
MsgBox("Access Granted", MsgBoxStyle.Information, "Confirmation")
Me.Hide()
Form2.Show()


Else
MsgBox("tu n as pas le droit d acceder au system", MsgBoxStyle.Critical, "Access Denied")
End If


sqlcon.Close()


alors pendant l'exécution s'affiche le message "tu n as pas le droit d acceder au system".

si quelqu'un peut me guider ca serai tres sympa! :)

4 réponses

Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
68
en version lisible, qu'obtient on ?

(désactive la freetextbox)
Messages postés
10
Date d'inscription
lundi 30 juillet 2007
Statut
Membre
Dernière intervention
6 avril 2009

Salut les VB'iens ;)

je sais pas si quelqu'un peut m'aider,
mon programme doit verfier un login et un mot de pass dans base de données sql,

le code est

Dim sqlcon As New SqlConnection("Server=localhost ; DataBase=mailing ; Integrated Security=SSPI;")
sqlcon.Open()
Dim struser As String "Select login,password from administrateur where login @UserName"
Dim sqlcom As New SqlCommand(struser, sqlcon)
sqlcom.Parameters.AddWithValue("@UserName", Me.TextBox1.Text)
Dim dr As SqlDataReader
dr = sqlcom.ExecuteReader()

If dr.HasRows = False Then
MsgBox("Identifiant incorrect", MsgBoxStyle.Information, "Atention")
Me.TextBox1.Focus()
Exit Sub
End If


dr.Read()
If Me.TextBox1.Text dr("login") And Me.TextBox2.Text dr("password") Then
MsgBox("Access Granted", MsgBoxStyle.Information, "Confirmation")
Me.Hide()
Form2.Show()


Else
MsgBox("tu n as pas le droit d acceder au system", MsgBoxStyle.Critical, "Access Denied")
End If


sqlcon.Close()


alors pendant l'exécution s'affiche le message "tu n as pas le droit d acceder au system".

si quelqu'un peut me guider ca serai tres sympa! :)
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
68
et une belle faille en perspective ^^

pas besoin de faire un select login, password (dangereux)

fais un SELECT COUNT(0) WHERE login=xxx and password=xxx

bien plus secure...
Messages postés
3983
Date d'inscription
jeudi 14 juillet 2005
Statut
Membre
Dernière intervention
30 juin 2013
13
Attention, dans les entrées utilisateur qui sont des chaines il faut TOUJOURS doubler les quotes (')
Sinon risque d'injection