使用sql和c#验证数据

本文关键字:验证 数据 sql 使用 | 更新日期: 2023-09-27 18:35:08

我一直在努力理解如何验证我在.aspx网页表单中输入的数据,比如用户名和密码,我尝试了很多东西,尝试阅读并寻找解决方案,但所有这些都很混乱,有很多我并不真正需要的东西。这是我学校的一个学校项目,我已经建立了一个工作数据库,我已经制作了一个注册页面,它可以工作并将其提交给数据库。

我们的老师为我们提供了一个DalAccess文件,该文件存储在我项目的App_Data文件夹中。这是里面的代码:

public class DalAccess
{
private OleDbConnection conn;
private OleDbCommand command;
private OleDbDataAdapter adapter;
public DalAccess(string strQuery)
{
  string ConnectionString = string.Format(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|'Database.accdb");
    conn = new OleDbConnection(ConnectionString);
    command = new OleDbCommand(strQuery, conn);
    adapter = new OleDbDataAdapter(command);
}
 public DataSet GetDataSet(string strSql)
{
    DataSet ds = new DataSet();
    command.CommandText = strSql;
    adapter.SelectCommand = command;
    adapter.Fill(ds);
    return ds;
}
 public int InsertUpdateDelete(string strSql)
 {
     int rowsAffected;
     this.conn.Open();
     OleDbCommand cmd = new OleDbCommand(strSql, conn);
     rowsAffected = cmd.ExecuteNonQuery();
     conn.Close();
     return rowsAffected;
 }
}

注意:我是一个完全的初学者,不知道代码中的任何内容意味着什么。

所以,我在后面的aspx.cs页面上写了这几行代码

{
public DataSet ds ;
protected void Page_Load(object sender, EventArgs e)
{
    if (IsPostBack) { 
        string loginid = Request.Form["loginid"];
        string loginpw = Request.Form["loginpw"];
        string sqlS = "Select IDD,Pass from UserInfo where IDD = '"+ loginid + "'";
        DalAccess dal = new DalAccess(sqlS);
        ds = dal.GetDataSet(sqlS);
    }
}
}

如果我写得正确,我选择了表中IDD(用户ID(值为loginid的行的两个选项卡。问题是,我不知道如何获取我选择的数据,将其与输入的内容进行比较,并检查它们是否匹配。

如果有人能向我解释一切的作用,我将不胜感激,因为我的老师没有太多时间给所有的学生,但一个例子和一个简单的解释也对我有用。

重要提示!:我知道,如果我将其参数化,它就可以安全地防止sql注入,但我没有这样做,但项目的这一部分不是为了安全,我们也会为此付出代价,我们会学习的。

提前谢谢。

使用sql和c#验证数据

当水涨到鼻子上方时,只有那些会游泳的人才会活下来,不是吗?

从技术上讲,我们将使用存储过程来验证登录[作为最佳实践]。在链接中,很明显,你可以用最少的代码来完成。

如何验证登录并传递用户ID

更新:

好的,如果我们想按你的方式做的话。

在代码背后的方法

     private void ValidateLogin()
        {
                string uname = "Hsakarp";//I have hard-coded the value to make it simple
                string pwd = "12345";
                string sqlS = "Select UserName,Password from Login where UserName = '" + uname + "' and Password = " + pwd;
        DalAccess dal = new DalAccess();
                    DataSet ds = dal.GetDataSet(sqlS); //GetDataset is gonna return the ds
                    for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
                    {
                        if (ds.Tables[0].Rows[i]["UserName"].ToString().Trim() == uname && ds.Tables[0].Rows[i]["Password"].ToString().Trim() == pwd)
//Check whether the username and password exists.
                            Label1.Text = "Login Successfull";
                        else
                            Label1.Text = "Login failed";
                    }
}