功能实现
5 功能实现
5.1 游客注册模块
游客模块具有注册成为会员、浏览图书列表、查看图书详细信息,主要是初次进入网站浏览书籍,但没有注册本系统会员的浏览者。在这里主要针对游客注册成为会员来进行说明。由于注册和登录的页面展示效果基本一致,因此用户登录的功能操作将不在进行说明。
游客注册成为会员功能说明如下:
(1) 描述:游客如果想要成为会员者,需要先注册成为本系统的会员。在这里页面使用了Ajax技术,自动验证文本框是否输入正确,如果不正确将不能进行注册需要重新填写信息。密码必须是由英文字母和数字组成的字符,校验是否满足条件是通过JQuery的相关技术在页面上自动进行验证的。
(2) 注册界面运行效果图如图5-1所示。
图5-1 游客注册
(3) 注册前台验证代码和注释如下。
/*即时检测用户名是否存在*/ $(\ var name = $(this).val();
21
功能实现
if (!HasContent(name)) {
$(\帐号不能为空\
else {
$.post(\
\
if (data == \
$(\
$(\帐号已存在\ } }); } });
/*即时检测验证码输入是否正确*/ $(\ var code = $(this).val();
if (!HasContent(code)) { $(\验证码错误\ return; } else {
$.post(\
\
if (data == \
$(\ } else {
$(\验证码错误\ } }); } });
/*检测邮箱*/
$(\ var email = $(this).val(); Var myreg =
/^([a-zA-Z0-9]+[_|\\_|\\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\\_|\\.]?)*[a-zA-Z0-9]+\\.[a-zA-Z]{2,3}$/; if (!HasContent(email)) {
$(\邮箱不能为空\ } else if (!jkr.isMatch(myreg, email)) {
$(\邮箱格式不正确\changeCode(); return; } else {
$(\ } });
(4) 注册一般处理程序UserRegister.ashx.cs后台代码和注释。
22
功能实现
if (CheckCode())//判断验证码 {
Model.User model = new Model.User();
model.Address = context.Request.Form[\
model.LoginId = context.Request.Form[\用户名 model.LoginPwd = context.Request.Form[\ model.Mail = context.Request.Form[\
model.Name = context.Request.Form[\ model.Phone = context.Request.Form[\ model.UserState.Id = 1;
BLL.UserManager bll = new BLL.UserManager(); int i = bll.Add(model); if (i > 0) {
context.Response.Write(\ } else {
context.Response.Write(\ }
}
5.2 会员模块
会员模块除了具有普通游客所具有的基本功能外还具有用户登录、评价、购物车
等功能,主要针对想要成为本系统会员的人来设定的角色。在这里对会员具有的查看图书列表信息进行详细介绍。
会员查看图书列表信息功能说明如下:
(1) 描述:会员具有查看图书信息的功能,在系统的图书列表页面可以进行查看相关的图书信息。在图书列表页面用户可以对根据图书的分类进行查找,并且在这里采用了价格排序和分页技术,使的查找更加方便。
(2) 图书列表界面运行效果图如图5-2所示。
23
功能实现
图5-2 图书列表
(3) 图书列表主要代码和注释如下。
BookList.aspx.cs页面:
protected void BindBookList(int pageIndex) {
int categoryId; int pageCount;
if(!int.TryParse(Request.QueryString[\ {
categoryId=0; }
BLL.BookManager bll = new BLL.BookManager();
pageCount=bll.GetPageCount(categoryId, 10);//获取总页数. if (pageIndex < 1) {
pageIndex = 1; }
if (pageIndex > pageCount) {
pageIndex = pageCount; }
currentPageIndex = pageIndex.ToString(); string orderby = string.Empty; if (ViewState[\ {
24
功能实现
orderby = ViewState[\ }
this.BookListRepeater.DataSource = bll.GetPageList(pageIndex,
10, categoryId, orderby);//获取指定类别下的分页的数据
this.BookListRepeater.DataBind();
this.lblPageCount.Text = pageCount.ToString(); }
查看图书详细信息功能说明如下:
(1) 描述:在图书详细信息里可以对书本进行留言。 (2) 图书列表界面运行效果图如图5-3所示。
图5-3 图书详细列表
(3) 图书详细信息里评价留言主要代码和注释如下。
一般处理程序BookComment.ashx.cs: string action=context.Request.Form[\ if (action == \添加评论 {
Model.BookComment model = new Model.BookComment();
model.BookId = Convert.ToInt32(context.Request.Form[\ model.Msg=context.Request.Form[\ model.CreateDateTime = DateTime.Now;
BLL.BookCommentManager bll = new BLL.BookCommentManager();
25