网上二手书店系统 信息系毕业论文_第1页
网上二手书店系统 信息系毕业论文_第2页
网上二手书店系统 信息系毕业论文_第3页
网上二手书店系统 信息系毕业论文_第4页
网上二手书店系统 信息系毕业论文_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

新录入的书籍信息。

特价书籍。显示网上书店中5折及5折以下的特价书籍信息。

新注册用户。提供客户网上自助注册功能,填写注册表单并提交后,就能成为网上书店的用户,注册成功并登录后就可以进行网上购书了。

用户登录。供已注册的用户登录,登录后才能在网上购书。

网上购书。已登录的用户可以将需要购买的书籍放入购物车,可将已放入购物车中的书籍生成一张订单并作确认,可将“未作确认”和缺货的订单取消。书店首页书店首页客户注册登录图书浏览图书查询书店简介查看购物车查看订单查看图书详细信息图书购买修改订购数量删除订购图书继续选购其他图书清空购物车提交购物车查看订单详细信息图2系统前台功能模块网上书店后台管理实现的功能有:入库管理。供网站管理员订购在库数小于安全在库数的书籍。

支付管理。供网站管理员支付所欠出版社的资金。情报管理。供网站管理员对网站信息进行管理。

书籍分类管理。供网站管理员对网上书店的书籍进行管理,可增加、修改、删除书籍的分类信息。

书籍资料管理。供网站管理员增加、修改、删除网上书店书籍的基本资料信息,主要是文本信息。用户管理。供网站管理员增加、修改、删除用户的基本信息。后台管理后台管理登录订单管理出库管理入库管理支付管理情报管理退出进货单制作图书入库进货信息查询支付票制作支付用户管理图书管理图书信息管理图书分类管理图3系统后台功能模块3.2数据库设计3.2.1系统主要E/R图会员会员送书地址送书方式支付方式保密性邮编电话用户名密码真实姓名性别E-mail住址加入时间间图2会员E-R图后台管理,在建立数据库之间,首先要针对后台的功能需求建立数据模型,然后在建立数据库。首先画出部分的E-R图:图书图书会员价市场价书名作者出版社ISBN版次页数入库日期主类次类成交数浏览数图片图3图书信息E-R图3.2.2数据库主要表列名类型主码可为空值描述bookid数字YN由数据库自动生成的顺序编号,作为图书的标示。bookname文本NN书籍的名称。bookpublisher文本NY出版社bookdate文本NY出版日期yeshu数字NY页数banci数字NY该书的版次isbn文本NYISBNshichangjia数字NY市场价huiyuanjia数字NY会员价bestbook数字NY管理员推荐此书chengjiaocount数字NY该书成交数liulancount数字NY该书被浏览次数dazhe数字NY该书折扣nclassid数字NY该书属于什么次类anclassid数字NY该书属于什么主类bookpic文本NY该书的图片bookauthor文本NY作者adddate日期/时间NY入库日期表1数据库详细设计列名类型主码可为空值描述dingdanid自动编号YN由数据库自动生成的顺序编号,图书定单的主码。useraccount文本NN用户下单次数dingdandate日期/时间NN下单日期bookid数字NN书表的主码bookcount数字NN书的数目dingdan文本NN定单zhuangtai数字NN定单状态address文本NN送书地址youbian数字NN邮编liuyan备注NY留言zfway数字NN支付方式shway数字NN送书方式sex文本NN性别zonger数字NN消费总额username文本NN姓名useremail文本NN电子邮件tel文本NN电话userid数字NN帐号表2订单信息表列名类型主码可为空值描述anclassid自动编号YN由数据库自动生成的顺序编号,作为主类的主码。anclass文本NN主分类的名anclassidorder数字NN与分类名对应的编号changyong数字NN常用分类表3图书主类信息表列名类型主码可为空值描述nclassidINTYN由数据库自动生成的顺序编号,作为次类的主码。nclassCharNN标题。nclassidorderBeizhuNN内容anclassidNumNN种类编号changyongCharNN常用表4图书次类信息表列名类型主码可为空值描述keyid自动编号YN由数据库自动生成的顺序编号,作为搜索关键字的主码。keyname文本NN搜索关键字的名称。keycount数字NY该关键字被搜索的次数表5关键字搜索表列名类型主码可为空值描述fkidINTYN由数据库自动生成的顺序编号,作为反馈信息的主码。fkleixingCharNN类型fksubjectCharNN主题fkcontentCharNN具体内容fkusernameCharNN用户名fkemailCharNNemailfklaiziCharNY传真fktelCharNN邮编fkdateCharNN电子邮件fkipDateNN注册时间表6反馈信息表列名类型主码可为空值描述userid自动编号YN由数据库自动生成的顺序编号,作为信息分类的主码。useraccount文本NN用户帐号useremail文本NN用户电子邮件userpassword文本NN用户密码regdate日期/时间NN加入时间question文本NY密码保护问题answer文本NY密码保护答案logintimes数字NN登陆次数lastlogintime日期/时间NN上次登陆时间username文本N真实姓名city文本NN所在城市address文本NN送书地址youbian数字NN邮编tel文本N联系电话shway数字NN送书方式zfway数字NN支付方式sex数字NN性别表7会员信息表列名类型主码可为空值描述adminid自动编号YN由数据库自动生成的顺序编号,作为信息分类的主码admin文本NN用户名password文本NN密码flag数字NY权限标志位表8管理员信息表

第四章详细设计4.1功能描述4.1.1非管理员用户1、首页,主要用于显示网站的一些动态更新,显示最新的书,还有最热销的图书,和推荐图书。1)首页最上面是一个导航条,可以方便的进行网站的导航,左上角是登录框,中间依次是网站推荐,新书上架,热销图书三个区域,他们的数据会根据数据库中相关数据的变动而变动,左面是一个图书分类列表,方便查找。图4首页截图部分代码:publicpartialclass_Default:System.Web.UI.Page{CommonClassccObj=newCommonClass();GoodsClassgcObj=newGoodsClass();protectedvoidPage_Load(objectsender,EventArgse){if(!IsPostBack){RefineBind();HotBind();Newsgoods();}}publicvoidST_check_Login(){if((Session["UserName"]==null)){Response.Write("<script>alert('对不起!您不是会员,请先注册!');location='Default.aspx'</script>");Response.End();}}publicstringGetVarMKP(stringstrMarketPrice){returnccObj.VarStr(strMarketPrice,2);}publicstringGetVarHot(stringstrHotPrice){returnccObj.VarStr(strHotPrice,2);}protectedvoidRefineBind(){gcObj.DLDeplayGI(1,this.dLRefine,"Refine");}protectedvoidHotBind(){gcObj.DLDeplayGI(3,this.dlHot,"Hot");}protectedvoidNewsgoods(){gcObj.DLNewGoods(dlDiscount);}publicvoidAddressBack(DataListCommandEventArgse){Session["address"]="";Session["address"]="Default.aspx";Response.Redirect("~/showInfo.aspx?BookID="+Convert.ToInt32(e.CommandArgument.ToString()));}protectedvoiddLRefine_ItemCommand(objectsource,DataListCommandEventArgse){if(e.CommandName=="detailSee"){AddressBack(e);}elseif(e.CommandName=="buy"){AddShopCart(e);Response.Redirect("shopCart.aspx");}}protectedvoiddlDiscount_ItemCommand(objectsource,DataListCommandEventArgse){if(e.CommandName=="detailSee"){AddressBack(e);}elseif(e.CommandName=="buy"){AddShopCart(e);Response.Redirect("shopCart.aspx");}}用户登录,用户登录时,需要填写会员名,密码,和随机动态生成的验证码,其是为了防止恶意攻击而设置。部分代码:publicDataTableUserLogin(stringstrName,stringstrPwd){SqlCommandmyCmd=dbObj.GetCommandProc("proc_UserLogin");SqlParameterName=newSqlParameter("@UserName",SqlDbType.VarChar,50);Name.Value=strName;myCmd.Parameters.Add(Name);SqlParameterPwd=newSqlParameter("@Password",SqlDbType.VarChar,50);Pwd.Value=strPwd;myCmd.Parameters.Add(Pwd);dbObj.ExecNonQuery(myCmd);DataTabledsTable=dbObj.GetDataSet(myCmd,"tbUser");returndsTable;}注册页面,要求用户输入姓名,用户名,密码,性别,邮箱,真实姓名,邮编,详细住址。姓名栏以及用户名栏添加了空验证控件,如果用户未填入任何信息则给出提示提示用户填入信息。邮箱栏设置了格式验证要求用户输入的信息必须符合%@%.com的格式。网页整体设置了错误信息收集控件能够显示所有用户输入信息的错误提示给出提示。当用户输入的信息全部符合规则后才可进行注册操作。把用户输入的信息全部装到一个实体类中,然后调用业务逻辑层的插入操作执行注册,注册会先判断是否已经存在该用户,如果存在则插入失败,如果不存在该用户才会注册成功。图5部分代码:publicintAddUser(stringstrName,stringstrPassword,stringstrRealName,boolblSex,stringstrPhonecode,stringstrEmail,stringstrAddress,stringstrPostCode){SqlCommandmyCmd=dbObj.GetCommandProc("proc_AddUser");SqlParametername=newSqlParameter("@UserName",SqlDbType.VarChar,50);name.Value=strName;myCmd.Parameters.Add(name);SqlParameterpassword=newSqlParameter("@Password",SqlDbType.VarChar,50);password.Value=strPassword;myCmd.Parameters.Add(password);SqlParameterrealName=newSqlParameter("@RealName",SqlDbType.VarChar,50);realName.Value=strRealName;myCmd.Parameters.Add(realName);SqlParametersex=newSqlParameter("@Sex",SqlDbType.Bit,1);sex.Value=blSex;myCmd.Parameters.Add(sex);SqlParameterphonecode=newSqlParameter("@Phonecode",SqlDbType.VarChar,20);phonecode.Value=strPhonecode;myCmd.Parameters.Add(phonecode);SqlParameteremail=newSqlParameter("@Email",SqlDbType.VarChar,50);email.Value=strEmail;myCmd.Parameters.Add(email);SqlParameteraddress=newSqlParameter("@Address",SqlDbType.VarChar,200);address.Value=strAddress;myCmd.Parameters.Add(address);SqlParameterpostCode=newSqlParameter("@PostCode",SqlDbType.Char,10);postCode.Value=strPostCode;myCmd.Parameters.Add(postCode);SqlParameterReturnValue=myCmd.Parameters.Add("ReturnValue",SqlDbType.Int,4);ReturnValue.Direction=ParameterDirection.ReturnValue;dbObj.ExecNonQuery(myCmd);returnConvert.ToInt32(ReturnValue.Value.ToString());}4.1.2管理员用户管理员界面,对图书的详细信息进行修改,对书籍进行分类和修改,订单的修改,提现的查看。图6图书类别修改,添加功能,页面内容板块添加了一个DataGridView控件,可以查看和添加,其中,在编辑修改图书类别的时候,点击列表中需要编辑的项目行中的修改按钮,修改完成后点击更新即可。图7部分代码:publicvoidDLDeplayGI(intIntDeplay,DataListdlName,stringTableName){SqlCommandmyCmd=dbObj.GetCommandProc("proc_DeplayGI");SqlParameterDeplay=newSqlParameter("@Deplay",SqlDbType.Int,4);Deplay.Value=IntDeplay;myCmd.Parameters.Add(Deplay);dbObj.ExecNonQuery(myCmd);DataTabledsTable=dbObj.GetDataSet(myCmd,TableName);dlBind(dlName,dsTable);}publicvoidDLNewGoods(DataListdlName){SqlCommandmyCmd=dbObj.GetCommandProc("proc_NewGoods");dbObj.ExecNonQuery(myCmd);DataTabledsTable=dbObj.GetDataSet(myCmd,"tbGoods");dlBind(dlName,dsTable);}2)订单管理功能管理页面中,当前商城的所有订单,添加,删除,修改等方法。并且显示如下信息跟单员单号下订时间货品总额运费总金额配送方式收货人联系电话订单状态图8书籍详细信息修改功能,在通过图书编号或者图书名选择了需要修改的图书以后,会出现如下界面,只需要在界面中修改对应选项,然后点击确认即可。图9部分代码:publicstringGetClass(intIntClassID){SqlCommandmyCmd=dbObj.GetCommandProc("proc_GCN");SqlParameterclassID=newSqlParameter("@ClassID",SqlDbType.Int,4);classID.Value=IntClassID;myCmd.Parameters.Add(classID);returndbObj.ExecScalar(myCmd).ToString();}4)书籍添加功能,可以添加书籍。页面的每一栏都设置了验证控件来验证用户输入的信息是否符合规则。封面一栏设置的是上传控件,可把上传的图片保存到系统指定的图片文件夹中,然后就可以在其中选择该图片。出版日期一栏添加了第三方控件日期控件,用户可很直观的选出你想设置的日期。用户输入新书的全部信息后,给出判定,如果全部符合规则后封装全部信息到一个书籍的实体类中执行插入操作。如果信息不符合规则则给出具体错误信息并确定到栏,能够让用户能够很快找到错误之处。图10部分代码:publicvoidDLNewGoods(DataListdlName){SqlCommandmyCmd=dbObj.GetCommandProc("proc_NewGoods");dbObj.ExecNonQuery(myCmd);DataTabledsTable=dbObj.GetDataSet(myCmd,"tbGoods");dlBind(dlName,dsTable);}5)会员管理,本页面用来进行会员信息的浏览和管理,可以进行删除操作。图11部分代码:publicDataTableGetUserInfo(intIntMemberID){SqlCommandmyCmd=dbObj.GetCommandProc("proc_GetUI");SqlParametermemberId=newSqlParameter("@MemberID",SqlDbType.Int,4);memberId.Value=IntMemberID;myCmd.Parameters.Add(memberId);dbObj.ExecNonQuery(myCmd);DataTabledsTable=dbObj.GetDataSet(myCmd,"tbUser");returndsTable;}3、用户页面,用户登入成功后显示的书籍列表信息是动态的,用户可以按书籍查找自己需要的书,点击书籍可以进入书的详细页面。1)网站推荐图书列表,本列表是根据管理员对于不同图书设置的不同权值的大小,来进行排序,优先显示前四本图书,其数据来自数据库中,所以修改以后,页面刷新就能看到不同的界面。2)新书上架列表,本列表的排序信息是图书的发布日期和时间,总是显示最新发布的四本图书。3)热卖图书列表,本列表中的数据排序是根据图书的销售情况,图书销售量会在系统中保存在数据库中,然后列表中的数据对应着权值最大的四个数据图书详细信息,当用户点击了一本图书以后就会进入本页面,在这里用户能浏览到该图的全部信息,点击购买就能够放置该图书到购物车中了图12部分代码:publicstringGetClass(intIntClassID){SqlCommandmyCmd=dbObj.GetCommandProc("proc_GCN");SqlParameterclassID=newSqlParameter("@ClassID",SqlDbType.Int,4);classID.Value=IntClassID;myCmd.Parameters.Add(classID);4.2数据库连接这个项目中使用的数据库是SQLServer,采用的用户名密码登入模式。项目中导入DBClass.cs类,包含数据库操作的基本方法。部分代码如下:publicvoidExecNonQuery(SqlCommandmyCmd){try{if(myCmd.Connection.State!=ConnectionState.Open){myCmd.Connection.Open();}myCmd.ExecuteNonQuery();}catch(Exceptionex){thrownewException(ex.Message,ex);}finally{if(myCmd.Connection.State==ConnectionState.Open){myCmd.Connection.Close();}}}publicstringExecScalar(SqlCommandmyCmd){stringstrSql;try{if(myCmd.Connection.State!=ConnectionState.Open){myCmd.Connection.Open();}strSql=Convert.ToString(myCmd.ExecuteScalar());returnstrSql;}catch(Exceptionex){thrownewException(ex.Message,ex);}finally{if(myCmd.Connection.State==ConnectionState.Open){myCmd.Connection.Close();}}

第五章性能测试与分析5.1运行各个模块进行调试利用不同的用户和权限,在各个运行模块中添加数据,依次进行基本调试。1.使用未注册进行各个权限内的页面功能测试。2.试用普通会员登录进行各个页面之间的功能实现连接跳转测试。3.使用管理员登录进行各个页面之间的功能和实现连接跳转测试。5.2对调试结果进行分析经过多次的调试和系统的分析,对发现的错误进行修改和处理。测试一:注册用户登陆1)登录:图13登录2)注册:图14图5-2无法注册图15可以注册注册成功图16注册成功会员登录图17登陆5)登陆成功图18登陆成功6)添加到购物车(有身份验证,应提示操作成功):图19添加图20添加成功测试二:非登录用户测试:1)添加到购物车(有身份验证,应提示非法操作):图21无法添加测试三:管理员登录测试:管理注册的用户,实现的功能:【删除】。图22删除2)管理书籍分类,实现的功能:【添加新的分类】。图23添加新的分类书籍管理,实现功能:【删除图书】、【添加新书】。图24删除图书管理订单,实现功能【查看订单】、【删除订单】。图25图5-13查看删除订单添加管理员图26添加管理员

结论Web开发技术的飞速发展促进了电子商务的普及。目前,越来越多的商业活动开始迁移到Internet中来进行,一种新的购

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论