一般我们日常所用的到App在注册账号时都需要再次确认密码的一致性,及判断两次输入密码是否一致(手机号注册除外),那么,该功能是如何实现的。
例如上面的注册界面,主体思路是首先判断用户是否没有输入全部信息,如果留有未填写信息,提示用户“账号或密码不能为空”,其次连接数据库并打开连接,用SQL语句中的数据查询语句SELECT将数据表中的所有账号与用户输入的账号比对,判断是否存在重复,如果存在重复,提示用户”账号已存在“,否则判断用户两次出入的密码是否一致,如果不一致,提示用户“两次密码不一致,请重新输入”,否则使用数据操作语句INSERT将账号及密码保存到数据表中并提示用户“注册成功”。代码如下:
string Admin_Name = textBox1_Reg.Text;
string Admin_Pwd = textBox2_Reg.Text.Trim();
string Admin_Pwd_Con = textBox3_RegCon.Text.Trim();
if (string.IsNullOrEmpty(Admin_Name) || string.IsNullOrEmpty(Admin_Pwd) || string.IsNullOrEmpty(Admin_Pwd_Con))
{
MessageBox.Show("账号或密码不能为空!");
return;
}
string sql = "Data Source=USER-20190503GJ;Initial Catalog=test_wjl;Integrated Security=True";
SqlConnection conn = new SqlConnection(sql.ToString());
if (conn.State == System.Data.ConnectionState.Closed)
conn.Open();
string Admin_Name1 = textBox1_Reg.Text;
string Admin_pwd1 = textBox2_Reg.Text.Trim();
string Admin_pwd1_RegCon = textBox3_RegCon.Text.Trim();
string strsql = "select count(*) from Administrator where Admin_Name ='" + Admin_Name1 + "'";
SqlCommand comm = new SqlCommand(strsql, conn);
int a = (int)comm.ExecuteScalar();
if (a == 0)
{
if (!Admin_pwd1.Equals(Admin_pwd1_RegCon))
MessageBox.Show("两次密码不一致,请重新输入");
else
{
string strsql2 = "INSERT INTO Administrator (Admin_Name, Admin_Pwd) values('" + Admin_Name1 + "','" + Admin_pwd1 + "')";
SqlCommand comm1 = new SqlCommand(strsql2, conn);
SqlDataReader dr = comm1.ExecuteReader();
MessageBox.Show("注册成功");
this.Hide();
}
}
else
{
MessageBox.Show("账号已存在");
}