会员注册的实现
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、设计数据库
二、会员注册界面设计
三、会员注册的功能实现
(一)检测帐号
检测帐号分为两种方式:
1、用户输入帐号后立即检测
检测程序流程:
(1)判断用户帐号文本框是否为空
(2)清除用户输入的无效字符
(3)调用检测用户帐号的方法检测用户帐号是否已被注册
2、用户单击注册按钮后检测
(二)会员注册
四、会员注册验证的实现
(一)非空验证
(二)比较验证
(三)控制最大字符数
(四)正则表达式验证
会员注册用到的方法
在互联网上,许多网站采用了会员制,用户注册后成为一名会员,可以行使会员的权力。在此,我以一名网站制作者的身份,来介绍会员注册的实现。实现会员注册,首先是设计数据库,然后设计会员注册界面,最后编写会员注册的方法和验证。
一、设计数据库
在数据库中设计一个会员表,用于存储会员数据。会员表包含四个项目:
会员编号、会员帐号、登录密码和会员邮箱。会员编号作为会员的序号,添加会员时自动生成;会员帐号是会员的标识,要惟一,设置为会员表
的主键;登录密码是会员登录时的验证码;会员邮箱作为网站与会员联
系的一种途径,网站可以将相关信息发到会员邮箱中。会员表的结构如
表1-1所示。
表1-1 t_users
注:t_users的标识值为是,标识种子为1,标识递增量为1。
二、会员注册界面设计
在网站根目录下新建一个文件夹member,member用于放置会员注册的
网页和会员的其他网页。在member中添加一个Web窗体Register.aspx,Register.aspx为会员注册的网页。在窗体Register.aspx中设计会员注册的
界面。
会员注册界面内容:
1、标题
标题为会员注册
2、用户输入项目
用户输入内容分为四项:
(1)用户帐号
(2)登录密码
(3)确认密码
(4)电子邮箱
每个项目包括标签、文本框、标注和验证控件。为了在用户输入帐号
后立即检测,在用户帐号的文本框后放置一个按钮控件。
3、注册按钮
注册按钮用于用户单击按钮完成注册。
会员注册界面如图1-1所示。
图1-1 会员注册界面
三、会员注册的实现
(一)检测帐号
会员帐号在同一个会员系统中是不能重复的,为了保证会员帐号惟一,设置检测帐号的功能。
检测帐号分为两种方式:
1、用户输入帐号后立即检测
在用户帐号的文本框后面放置一个按钮,在按钮的单击事件
btnJczh_Click中编写代码检测用户输入的帐号是否已经被注册了。
检测程序流程:
(1)判断用户帐号文本框是否为空
如果用户帐号文本框不是空的,则执行(2)和(3)。
如果用户帐号文本框是空的,则提示用户输入用户帐号。
代码如代码清单1-1所示。
代码清单1-1 检测用户帐号
//检测帐号是否已被注册
protected void btnJczh_Click(object sender, EventArgs e)
{
//1.判断用户帐号的文本框是否为空,如果用户帐号的文本框不为空。
if (txtusername.Text != "")
{
//2.清除用户输入的无效字符
txtusername.Text = CleanInput(txtusername.Text.Trim());
//3.调用检测用户帐号的方法,检测用户帐号是否已被注册。
num = gh1.DetectionAccount(txtusername.Text.Trim());
if (num > 0) //num>0表示用户输入的帐号已被注册
{
txtusername.Text = "";
Response.Write("");
}
else
{
Response.Write("");
}
}
else//用户帐号的文本框为空,提示用户输入用户帐号。
{
Response.Write("");
}
}
if(txtusername.Text != "")判断用户帐号文本框是否为空,如果if成立,则表示用户帐号文本框不是空的。else表示用户帐号文本框是空的,Response.Write("")提示用户输入用户帐号。
(2)清除用户输入的无效字符
如果用户在用户帐号文本框中输入了数据,为了避免无效数据,
使用清除无效字符的方法清除无效字符。在代码清单1-1中
txtusername.Text = CleanInput(txtusername.Text.Trim());
是清除用户帐号文本框txtusername的无效字符。无效字符是指
除英文字母、数字和下划线之外的字符。CleanInput()是清除无
效字符的方法。CleanInput()方法的代码如代码清单1-2所示。
代码清单1-2 清除无效字符的方法CleanInput()
///
///清除无效字符
///
///字符串
///
String CleanInput(string strIn)
{
// 空字符串替换无效字符。
return Regex.Replace(strIn, @"[^\w]", "");
}
strIn是需要清除的字符串,return返回清除后的字符串。
Regex.Replace()是清除的方法,其中Regex表示不可变的正则表达式,Replace 是替换字符的方法。[^\w]是正则表达式定义的字符模式,表示非数字、英文字母和下划线的字符串。""是空字符串。Regex.Replace(strIn, @"[^\w]", "")就是用空字符串替换非数字、英文字母和下划线的字符串,即用空字符串替换无效字符。使用类Regex需要导入名称空间System.Text.RegularExpressions。
(3)调用检测用户帐号的方法检测用户帐号是否已被注册
如果用户在用户帐号文本框中输入了数据,在清除用户帐号文本框中的无效字符后,调用检测用户帐号的方法检测用户帐号是否已
被注册。
在代码清单1-1中
num = gh1.DetectionAccount(txtusername.Text.Trim());
就是调用检测用户帐号的方法。
gh1是类的一个对象,DetectionAccount()是检测用户帐号的方法,txtusername是用户帐号文本框的ID,DetectionAccount()方