1.1课题的选题背景 (3)1.2国内外研究现状 (3)1.3本人所做的主要工作 (4)1.4所涉及的关键技术问题 (4)2 课题需求分析 (4)2.1总体需求 (4)2.2功能需求 (5)2.3性能需求 (5)3 主要工作原理及关键技术介绍 (5)3.1 程序原理技术介绍 (5)3.2 关键问题的解决思路 (9)3.2.1如何通过不同书籍信息查找书籍 (9)4 系统设计 (9)4.1系统总体功能结构图 (9)4.1.1系统功能模块划分 (10)4.2系统后台总体功能结构图 (10)4.3 系统后台各功能模块功能结构图 (11)4.3.1图书管理模块功能结构图 (11)4.3.2订单管理模块功能结构图 (12)4.3.3用户管理模块功能结构图 (12)4.4系统功能流程图 (13)4.4.1管理员流程图 (13)4.5数据库表结构设计 (15)4.5.1普通用户表:Accounts (15)4.5.2管理员表:studyuser (15)4.5.3书籍表:Products (15)4.5.4书籍种类表:Categrories (15)4.5.5购物车表:ShoppingCarts (16)4.5.6订单表:Orders (16)5 系统实现 (16)5.1数据库设计 (16)5.2后台页面设计 (19)5.2.1管理员登录页面 (19)5.2.2后台管理页面设计 (20)5.2.3图书管理页面设计 (21)5.3网站目录结构 (22)6 系统测试 (23)6.1测试环境 (23)6.2测试记录 (23)6.2.1数据库连接出错 (23)7 系统运行环境 (24)7.1硬件环境 (24)7.2软件环境 (24)9参考文献..................................................................................................................................... 25.1 绪论1.1课题的选题背景随着网络在中国的广泛普及,网络支付手段的逐步完善,越来越多的中国人逐渐习惯于网上购物,习惯于鼠标点击下订单,送货上门的快捷便利的购物方式。
传统书店的购书观念正在被网上书店这一方便快捷的购书方式所冲击。
网上书店在国际互联网上可以实现的商务功能已经越来越多样化,从最开始的信息发布功能,到现在的在线图书展示功能、在线洽谈业务功能、在线交易功能、在线采购功能、在线客户服务功能、在线网站管理功能等等,几乎传统书店所提供的功能都可以在互联网上进行电子化的高效运作,而借助网络的跨地域特点,更是将传统书店的地域限制加以突破,全国各地的读者都可以通过网络在同一个网上书店购书,从而大大增加了客户的数量。
为了使网上书店的投入回报和管理效益最大化,在对网上书店进行系统开发之前,必须对一系列问题进行科学的论证,如网上书店的需求分析、网上书店总体规划、网上书店系统的功能和实施方案、网上书店的传播与推广、运行网上书店系统的软件和硬件配置、网上书店的管理系统和管理方法等等。
综上所述,网上书店已经成为互联网时代购书者的最佳选择,必将获得巨大的成功。
1.2国内外研究现状网络经济是利用互联网技术广泛联系传统信息系统的丰富资源的一种动态商务活动它利用前所未有的方式将顾客、供货商和企业员工联系在一起,能将有价值的信息迅速传递给需要的人们,网络技术的兴起和蓬勃发展彻底改变了传统信息采集、传递和外观,对劳动技能和工作效率的提高,提供了前所未有的有利条件和推进作用,网络技术的成熟,促进了信息技术更加广泛的应用,同时助于提供企业生产的应变能力和适应性,使高质量、低成本的产品与按时供货和周到的服务相结合,把时间和服务同技术和成本并列为企业生产的总要素,网络技术增强了企业管理功能,为企业管理提供全新的工具和手段,已成为企业管理的有效手段。
网络经济是用现代信息技术和网络技术依靠形成的互联网网络进行商务活动,它集金融电子化、管理信息化、办公室自动化于一体,具有无可比拟的优势。
随着Internet 的迅速发展,当今电子商务已被广大的互联网用户所接受,网上书店系统作为其中的一部分也有了迅速的发展。
当然,网上书店系统目前主要以B2C的方式进行经营,通过网上开店的方式向读者出售书本。
国内著名的两大书店,当当网与卓越网,他们出售书的理念很简单,读者可以自己寻找自己喜爱的书。
对于读者来说,无需为寻找一本自己想要的书籍奔波于城市的各个角落,极大的方便的读者的生活。
1.3本人所做的主要工作此次课程设计所做的网上书店系统是和同学一起完成的。
其中我所完成的部分为网站的后台设计。
包括数据的设计和用户的登录、用户注册、书籍信息的添加、删除、以及订单的发送和书籍的分类检索、查看等与数据库相关的部分。
1.4所涉及的关键技术问题1、数据库的设计2、数据的运用包括数据的查询、修改、删除、增加以及数据绑定2 课题需求分析通过对网上书店系统分析、制定整个系统框架,主要需求如下:2.1总体需求1、建立对图书提供全面管理的信息系统2、对所有的图书、客户提供全面管理3、对图书详细信息提供管理2.2功能需求1、在Internet 客户可通过IE或其他浏览器浏览书目信息;2、在互联网可提交订单3、具有购物车功能4、客户能通过书名连检索书籍5、客户可在网上进行注册,成为会员6、客户能查看当前订单和以往订单7、书店员工能查找客户联系信息2.3性能需求1、系统可以对图书的库存进行统计2、易于维护和扩充3、系统界面设计友好、操作方便、灵活4、具有高可靠性和容错能力,不允许系统在工作时间停机,不允许系统丢失图书信息,客户信息5、具有安全检测机制,非法用户不能使用系统,不能偷看系统信息,不能修改图书,防止随意删改,且能够进行信息备份6、具有保密机制,各级使用者只能看到允许查看的系统信息3 主要工作原理及关键技术介绍3.1 程序原理技术介绍1. HTML(Hyper Text Mark-up Language)即超文本标记语言或超文本链接标示语言,是目前网络上应用最为广泛的语言,也是构成网页文档的主要语言。
HTML 文本是由HTML命令组成的描述性文本,HTML命令可以说明文字、图形、动画、声音、表格、链接等。
HTML的结构包括头部(Head)、主体(Body)两大部分,其中头部描述浏览器所需的信息,而主体则包含所要说明的具体内容。
CSS(Cascading Style Sheet,可译为“层叠样式表”或“级联样式表”)是一组格式设置规则,用于控制Web页面的外观。
通过使用CSS样式设置页面的格式,可将页面的内容与表现形式分离。
页面内容存放在HTML文档中,而用于定义表现形式的CSS规则则存放在另一个文件中或HTML文档的某一部分,通常为文件头部分。
将内容与表现形式分离,不仅可使维护站点的外观更加容易,而且还可以使HTML文档代码更加简练,缩短浏览器的加载时间。
JavaScript是一种基于对象和事件驱动并具有相对安全性的客户端脚本语言同。
同时也是一种广泛用于客户端Web开发的脚本语言,常用来给HTML网页添加动态功能,比如响应用户的各种操作。
它是一种动态、弱类型、基于原型的语言,内置支持类。
JavaScript也可以用于其他场合,如服务器端编程。
完整的JavaScript实现包含三个部分:ECMAScript,文档对象模型,字节顺序记号。
2.存储过程可以提高性能:数据库可以使用缓存等手段对数据库操作进行优化;有更好的安全性用户必须得到许可才可以访问存储过程;更容易维护:和嵌入代码并且已经部署到客户端的sql语句相比,存储过程更容易维护;提供了更高的抽象:客户端被隔离在具体的实现细节之外.;存储过程可以减少网络故障,因为可以批处理,而不是从客户端发送多个请求. 当存储过程数量越来越多的时候,在众多存储过程中找到想要修改的存储过程是一件麻烦的事;.如果用嵌入式SQL语句,可以在修改代码时,顺便就修改了数据库操作语句,使用方便。
3. SqlDataSource组件:它可以连接到任何支持的数据源(如SQL Server、Oracle等),从中检索数据,并使得其他控件(如GridView等控件)可以绑定到数据源ObjectDataSource 控件:表示具有数据检索和更新功能的中间层对象。
作为数据绑定控件(如 GridView、FormView 或 DetailsView 控件)的数据接口,ObjectDataSource 控件可以使这些控件在 网页上显示和编辑中间层业务对象中的数据XmlDataSource控件:提供了绑定内存中或物理磁盘上的XML文档的一种简单方式。
该控件有许多属性,便于指定包含数据的XML文件和用于把源XML转换为合适格式的XSLT转换文件。
还可以提供一个XPath查询,以选择某个数据子集。
AccessDataSource控件:用来从Access数据库中将数据提取至 2.0(.aspx)页面。
这个控件拥有的属性很简单。
AccessDataSource的最重要的属性是DataFile属性,用来指向硬盘上MDB文件的路径。
AccessDataSource拥有的其他属性还有SelectCommand,用来设定一个显示需要返回的结果集(表和列)的语句。
SelectCommand必须使用SQL语法来定义。
sitemapdatasource控件:页面导航控件,还可以绑定到不同的其他页面控件,比如treeview,menu等,十分灵活,使到能很方便地实现页面导航的不同形式,而且还提供了运行时的编程接口,可以以编程的形式动态实现页面导航控件。
4. CommandField 是一个特殊字段,由数据绑定控件使用以显示执行编辑、更新、取消,删除或选择操作的命令按钮。
执行这些操作的命令按钮可以通过使用下表中显示的属性来显示或隐藏。
根据使用CommandField 字段的数据绑定控件,该字段会以不同的方式显示。
GridView 控件将CommandField 字段显示为一列,默认情况下,当用户在CommandField 字段中单击按钮时,将对页面上的所有验证控件执行验证。
BoundField 类以文本显示字段的值。
根据在其中使用BoundField 对象的数据绑定控件,该对象会以不同的方式显示。
GridView 控件将BoundField 对象显示为一列。
CheckBoxField 类在复选框中显示布尔型数据字段的值。
根据在其中使用CheckBoxField 对象的数据绑定控件,该对象会以不同的方式显示。
例如,GridView 控件将CheckBoxField 对象显示为一列,而DetailsView 控件则将该对象显示为一行。