一、首先建好项目,并且建立好一个web空窗体 如何建好web空网站,参考博文:https://blog.csdn.net/qq_44394562/article/details/116308453
这里我使用两个TextBox和三个Button控件,简单排列好布局
文章图片
同样的方式我们建立一个注册界面:
这里我使用了三个TextBox、两个Button、一个Label和一个CompareValidator验证控件
文章图片
其中CompareValidator验证控件用来验证密码和确认密码栏是否一致,如果不一致给出错误提示。
ErrorMessage设置为:注意:两次输入的密码不一致!
然后绑定好两个控件:
文章图片
二、建立数据库 为了方便,这里我使用VS内置的SQL数据库
右键项目,添加新项,选择SQL Server数据库,点击确定
建好数据库后开始建表
文章图片
文章图片
最后点击左上角更新
选择更新
文章图片
文章图片
说明更新成功。
接下来配置Web.config文件:
.web>
好了,接下来编写C#后台代码:
首先建立与数据库的连接,在Login.aspx.cs文件的所有事件之外定义数据库连接字符串和连接对象:
static string Constr = "Data Source=(LocalDB)\\MSSQLLocalDB;
AttachDbFilename=D:\\vs\\work\\Login\\Login\\App_Data\\MyData.mdf;
Integrated Security=True";
SqlConnection conn = new SqlConnection(Constr);
回到Login.aspx界面双击登录按钮:
//获取用户在页面上的输入
string userLoginName = TextBox1.Text.Trim();
//用户登录名
string userPassword = TextBox2.Text.Trim();
//密码
SqlDataReader dr;
// 新建DataReader对象
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
cmd.CommandText = "SELECT [Password] FROM [User] where LoginName=@LoginName";
cmd.CommandType = CommandType.Text;
// 添加查询参数对象,并给参数赋值
SqlParameter para = new SqlParameter("@LoginName", SqlDbType.VarChar, 50);
para.Value = https://www.it610.com/article/userLoginName;
cmd.Parameters.Add(para);
try// 打开conn连接,检索User表的Password字段
{
conn.Open();
// 打开数据库连接
dr = cmd.ExecuteReader();
// 将检索记录行填充到DataReader对象中
if (dr.Read())//如果用户存在
{// 如果密码正确,显示登录成功
if (dr.GetString(0).Trim() == userPassword)
{// 登录成功后记下该用户登录名,以便后续功能使用
Session.Add("login_name", userLoginName);
TextBox1.Text = "";
LblCaution.Text = "登录成功!";
Response.Write("");
Response.Write("");
//打开新的页面,原窗口被代替。
}
else//如果密码错误,给出提示
{
Response.Write("");
}
}
else//如果用户不存在
{
Response.Write("");
}
dr.Close();
//关闭DataReader对象
}
catch (SqlException sqlException)
{
Response.Write(sqlException.Message);
// 显示连接异常信息
}
finally
{
if (conn.State == ConnectionState.Open)
conn.Close();
}
双击Login.aspx中的注册按钮,添加页面跳转:
Response.Redirect("Register.aspx");
双击重新输入按钮,设置清空:
TextBox1.Text = "";
TextBox2.Text = "";
【web|用asp.net基于C#编写简单登录注册界面(访问数据库)】接下来在Register.aspx.cs文件中的所有事件之外定义数据库连接字符串和连接对象:
static string Constr = "Data Source=(LocalDB)\\MSSQLLocalDB;
AttachDbFilename=D:\\vs\\work\\Login\\Login\\App_Data\\MyData.mdf;
Integrated Security=True";
SqlConnection conn = new SqlConnection(Constr);
接下来到Register.aspx页面中双击注册按钮:
输入如下代码:
conn.Open();
//检查用户是否已存在
SqlCommand Cmd = new SqlCommand();
Cmd.Connection = conn;
Cmd.CommandText = "select [LoginName] from [User]";
SqlDataReader dr = Cmd.ExecuteReader();
while (dr.Read())
{
if (dr.GetString(0).Trim() == TextBox1.Text)
{
LblCaution.Text = "账号"+TextBox1.Text + "已经存在,请重新填写账号!";
conn.Close();
return;
}
}
conn.Close();
string SqlStr;
SqlStr = "Insert into [User]([LoginName],[Password])values(@LoginName,@Password)";
Cmd.CommandText = SqlStr;
//添加参数对象,并给参数赋值
SqlParameter para1 = new SqlParameter("@LoginName", System.Data.SqlDbType.VarChar, 50);
para1.Value = https://www.it610.com/article/TextBox1.Text;
Cmd.Parameters.Add(para1);
SqlParameter para2 = new SqlParameter("@Password", System.Data.SqlDbType.VarChar, 50);
para2.Value = https://www.it610.com/article/TextBox2.Text;
Cmd.Parameters.Add(para2);
try
{
conn.Open();
//打开数据库连接
Cmd.ExecuteNonQuery();
//将添加记录
LblCaution.Text ="恭喜你,注册成功!赶快返回登录吧!";
}
catch (SqlException sqlException)
{
Response.Write(sqlException.Message);
//显示连接异常信息
}
finally
{
if (conn.State == ConnectionState.Open)
conn.Close();
}
}
双击返回按钮,输入如下代码:
Response.Write("");
好了,接下来我们运行测试一下:
文章图片
点击注册:
文章图片
返回登录:
文章图片
文章图片
完成了!
推荐阅读
- web|如何用vs新建Asp.net项目(Web页面)
- html|HTML版扫雷
- 数据库|解决(MySQL数据库完全卸载(卸载干净)及卸载过程中可能遇到的问题(我的版本为:MySQL57))
- #yyds干货盘点#数据库面试题 2022
- 数据存储|结构化数据存储,如何设计才能满足需求()
- html|CSS学习
- mysql|每日sql -用户两天留存率
- web|Web——CSS页面背景
- PDManer [元数建模]-v4.0 (一款简单好用的数据库建模平台)