我创建一个新的注册页面成功。每当我输入用户名和密码,并点击提交按钮,它保存的凭据,但这里的问题是两次输入的数据。
private void sbmtbtn_Click(object sender, EventArgs e)
{
if (usrnmtxtbx.Text != "")
{
if (pswdtxtbx.Text != "")
{
if (cnfrmtxtbx.Text != "")
{
if (pswdtxtbx.Text == cnfrmtxtbx.Text)
{
MySqlConnection Con = new MySqlConnection(ConnectionString);
MySqlCommand Cmd;
Con.Open();
try
{
Cmd = Con.CreateCommand();
Cmd.CommandText = "INSERT IGNORE INTO signup(username, password,confirm) VALUES(@username,@password,@confirm)";
Cmd.Parameters.Add("@username", MySqlDbType.VarChar).Value = usrnmtxtbx.Text;
Cmd.Parameters.Add("@password", MySqlDbType.VarChar).Value = pswdtxtbx.Text;
Cmd.Parameters.Add("@confirm", MySqlDbType.VarChar).Value = cnfrmtxtbx.Text;
DataTable table = new DataTable();
MySqlDataAdapter adapter = new MySqlDataAdapter();
adapter.SelectCommand = Cmd;
adapter.Fill(table);
Cmd.ExecuteNonQuery();
MessageBox.Show("Your Account resgistred Successfully", "information", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
catch (Exception)
{
throw;
}
finally
{
Con.Close();
}
}
}
}
}
}
输出:
确认用户名密码
1你好123 123
2你好123 123
1条答案
按热度按时间hjzp0vay1#
Cmd.ExecuteNonQuery();
将该行插入表中;DataTable
和MySqlDataAdapter
是完全不必要的(并且复制了数据);您应该删除该代码。此外,将用户密码直接存储在数据库中是一个非常糟糕的主意,应该完全避免。请研究“密码哈希”和“salting”,并安全地存储密码。理想情况下,您可以使用现有的ASP.NET标识系统,而避免构建自己的标识系统。
一些现有答案: