Probleme de connection

cs_mayna21 Messages postés 10 Date d'inscription lundi 30 juillet 2007 Statut Membre Dernière intervention 6 avril 2009 - 24 mars 2009 à 03:40
cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 - 24 mars 2009 à 21:49
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

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
24 mars 2009 à 09:22
en version lisible, qu'obtient on ?

(désactive la freetextbox)
0
cs_mayna21 Messages postés 10 Date d'inscription lundi 30 juillet 2007 Statut Membre Dernière intervention 6 avril 2009
24 mars 2009 à 13:14
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! :)
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
24 mars 2009 à 13:33
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...
0
cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 16
24 mars 2009 à 21:49
Attention, dans les entrées utilisateur qui sont des chaines il faut TOUJOURS doubler les quotes (')
Sinon risque d'injection
0
Rejoignez-nous