这是我的代码背后 登录按钮
dall login = new dall();
DataTable dt = login.select(("select ID,Password from Login"));
for (int i = 0; i < dt.Rows.Count; i++)
{
if (txtID.Text==dt.Rows[i][0].ToString() && txtPass.Text==dt.Rows[i][1].ToString())
{
MessageBox.Show("Login Successfully", "Login ALert", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
MessageBox.Show("Login Failed", "Login Alert", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
这是我的连接类代码
conn.Open();
SqlCommand cmd = new SqlCommand(query,conn);
SqlDataAdapter adptr = new SqlDataAdapter(cmd);
DataTable dt = new DataTable();
adptr.Fill(dt);
conn.Close();
return dt;
答案 0 :(得分:0)
我猜不正常工作意味着失败消息多次出现。
您的身份验证方式错误。如果ID
和Password
匹配,您可以从数据库中提取数据,如果记录或值来自数据库,则显示成功,否则失败。
1)更改您的查询以使用参数ID和密码。
string query = "select ID,Password from Login Where ID = @ID AND Password =@Pssword"
2)然后将参数值添加到sqlcommand
command.Parameters.Add("@ID", SqlDbType.Int);
command.Parameters.Add("@Password", SqlDbType.String);
3)然后检查DataTable
是否包含值
if (dt.Rows.Count == 0)
//Show failure message
else
//show success message