基本上,im tryin所做的是使登录页面连接到数据库,因此在下一种形式中,im tryin显示使用datagrid输入其ID(相同数据库)的人员信息。因此,如何使数据网格显示唯一需要的信息。
这是我在下一张表格上写的
Private Sub DataGrid1_Click()
Adodc1.RecordSource = "select * from STUDENTINFO where Name = '" + txtuser.Text + "'"
Adodc1.Refresh
Adodc1.Caption = Adodc1.RecordSource
End Sub
这是用户登录代码
Private Sub loginbtn_Click()
Adodc1.RecordSource = "select * from STUDENTINFO where Name = '" + txtuser.Text + "'"
Adodc1.Refresh
If (Adodc1.Recordset.EOF = False) Then
If (txtpass.Text = Adodc1.Recordset.Fields("ID")) Then
MsgBox "Login Succeeded!"
Adodc1.Caption = Adodc1.RecordSource
StudentInfo.Show
Else
MsgBox "Invalid Password!", vbCritical, "Login"
txtuser.Text = ""
txtpass.Text = ""
txtuser.SetFocus
End If
Else
MsgBox "Invalid Username or Password!", vbCritical, "Login"
txtuser.Text = ""
txtpass.Text = ""
txtuser.SetFocus
End If
End Sub
我希望在下一个表格中显示用户所需的唯一信息,以便用户在数据网格中看到
答案 0 :(得分:0)
SQL注入漏洞的经典示例。
要执行此操作,至少应在“下一个表格”上使用:
Adodc1.RecordSource = "select * from STUDENTINFO where Name = '" + LoginForm.txtuser.Text + "'"
要引用该登录表单,您不应卸载它,而只能将其隐藏,以使其保留在内存中。并修复SQL注入漏洞!至少像这样:
Replace(LoginForm.txtuser.Text, "'", "''")