1、 本科 毕业 设计 (论文 ) (二零 届) 基于 LAMP 的网上书店的设计与实现 所在学院 专业班级 计算机科学与技术 学生姓名 学号 指导教师 职称 完成日期 年 月 摘要: 当今的时代是一个极为发展的信息时代,计算机已成为人们生活中一样必不可少的工具。于是相应的与网络有关的新兴事物也便应运 而生了。而网上书店便是其中的一种。其主要作为人们在网上购书的一个平台。使人们能够在足不出户的情况下选到自己最喜欢,最受用的书籍。基于 LAMP 的网上书店的设计与实现即是指用LAMP 来 作 为 开 发 工 具 开 发 出 来 的 网 上 书 店 。 LAMP 是Linux+Apache+Mysql
2、+Perl/PHP/Python 缩写, LAMP 是一组常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的 Web 应用程序平台。 本网上书店主要有以下几个功能。用户的注册:用 户可以通过注册个人信息成为注册用户。用户登录:注册用户使用合法的用户名和密码登录系统。修改个人信息:注册用户可以修改自己的个人信息或密码。用户的注销。购物车:选择商品放入购物车并可以对购物车中的商品进行删除和数量的修改。在线支付:在收银台填写收货人信息并简单地模拟在线支付。历史订单:用户可以浏览所有以往的订单信息。浏览商品信息:查看所
3、有商品列表以及某种商品是详细信息,查询符合条件是商品,在首页显示最新的一个商品信息和最新的 10个商品信息列表。 关键词 : 网上书店; Linux;LAMP Design and Implementation of online Bookstore based on LAMP Abstract: Todays era is a very development of the information age. Computer has become as indispensable tools in life . Then the corresponding network-related t
4、hings also came into being a new.The oneline bookstore is one of them.It be use for people shopping on the web as a platform.So that people can choose their favorite and most book without going out. LAMP-based online bookstore design and implementation entails the use of LAMP as a development tool d
5、eveloped online bookstore. LAMP is the abbreviations of Linux + Apache + Mysql + Perl / PHP / Python.LAMP is a open source software which is always used to put up dynamic website or servers.All of itself are independent software.But because it is always used together,they have increasing compatibili
6、ty,made up a strong Web Application Platform. The online bookstore features the following main.User registration:Users can sign up to become a registered user of personal information.User Login:Registered users to use a valid username and password system.Modify Personal Information: Registered users
7、 can modify their personal information or passwords.Users log off.Shopping Cart: Choose the product into the shopping cart and shopping cart can be removed and the number of goods changes.Online payment: the consignee at the cash register information and a simple simulation of online payment.Order h
8、istory: Users can view all past order information.View product information: See a list of all the goods and some goods are more information, check eligible commodity in the home page displays the latest in a commodity information and the latest product information list 10. Key words:online bookstore
9、;Linux;LAMP 目 录 1 引言 . 1 1.1 现状 . 1 1.2 什么是网上书店 . 2 1.3 什么是 LAMP . 2 2 开发环境与开发工具介绍 . 4 2.1 开发环境 . 4 2.2 开发工具 . 4 3 系统分析与设计 . 6 3.1 系统分析 . 6 3.2 系统设计 . 7 3.2.1 系统流程 . 7 3.2.2 数据库设计 . 11 4 系统实现 . 12 4.1 首页及公共文件 . 12 4.2 用户管理子系统 . 13 4.3 商品信息子系统 . 15 4.4 在线购物子系统 . 16 5 主要源代码介绍 . 17 5.1 首页主要源代码 . 17 5.2
10、 用户管理子系统主要源代码 . 20 5.3 商品信息 子系统主要源代码 . 27 5.4 在线购物子系统主要源代码 . 29 6 进一步的探讨 . 31 7 结束语 . 32 参考文献 . 33 1 1 引言 1.1 现状 当今的时代是一个极为发展的信息时代,计算机已成为人们生活中一样必不可少的工具。于是相应的与网络有关的新兴事物也便应运而生了。而网上书店便是其中的一种。其主要作为人们在网上购书的一个平台。使人们能够在足不出户的情况下选到自己最喜欢,最受用的书籍。 据最新统计,中国大陆已经注册的网上书店大约有 100 多家,有网站 的有 50 多家,但已经投入运营能够买到书的只有十来家。最近
11、据一家媒体的调查,能够买到书且服务到位的也只有大洋网、旌旗席殊等几家。很多人看到了书这种商品网上销售的诸多好处:方便购买、金额小、风险小、用户容易决定;讯息的完整性以及很少出现质量问题和退货现象等。尽管全球最大的网上书城亚马逊股票惨跌,尽管各家书店都承认目前的亏本经营状况,但这并未阻挡投资者对网上书店 “钱 ”景的期待 。 目前我国网上书店的主要类型主要有以下几种:由国有新华书店投资建设的网上书店。如,主要依托传统的图书大厦的图书储存进行网络售书,属于新 华书店上网或上网的书店。由出版社建立的网上书店。我国多家出版社中,已建立网站的有家,占。外贸出版公司投资建设的网上书店。这一类网上书店立足公
12、司主营业务,主要对海外进行图书销售,近年来销售量逐渐增加。非出版业资本投资建设的网上书店,如卓越网。就目前情况而言,上述几类的网络书店可以分为两大类。一类是没有实体书店的网上书店,以卓越网为代表,还有一类是以实体书店为支撑的。前一类书店已经开始逐步销售更多的商品,在很大程度上,是以图书为主打产品,开发其他商品作为补充。 网上书店的运营模式与 传统图书发行相比在信息发布、购买支付、物流配送等环节更依托网络手段,这是网上书店与传统书店最大的不同: 来源大学生前途网 网络书店是纯虚拟的,采用以网络作为平台搜集、整理图书信息,用网下配送公司实施速递服务的电子商务形式,是网上零售业的典型代表。如,网上购
13、书。网上书店购物流程极其简便,会上网的人只在分钟之内就能实现网上购买。又如,客户体验。由于网络信息传递快,不受时空限制,突显个性化和互动性,因而,丰富了购书者的消费体验。例如,卓越网年月成为全球最大的网上书店亚马逊的全球 第七家站点,卓越网的所有图书都能在亚马逊全球七个站点得到展示和销售,充分满足了世界各地读者的需求。这使得卓越网能一如既往地以用户为中心,继续优化网站构架,加强个性化和互2 动性能,深化媒体特性,丰富频道板块内容,使之得到更多爱书人的喜爱,成为全球华人的购书社区和精神家园。 1.2 什么是网上书店 网上书店顾名思义,网站式的书店。是一种高质量,更快捷,更方便的购书方式。网上书店
14、不仅可用于图书的在线销售,也有音碟、影碟的在线销售。而且网站式的书店对图书的管理更加合理化,信息化。售书的同时还具有书籍类商品管理、购物 车、订单管理、会员管理等功能。但网上书店的真实性是消费者的最大顾虑,这也是网上书店还不被大多数消费者所接受的原因之一。在网上书店买书,可以查到所买图书的更多信息,因为网上书店是一个网站,它有它独特的售书方式和功能。如用户注册会员功能等,会员类型有:高级会员、金牌会员等。有的网上书店有会员积分设置,如达到一定积分时自动成为高级会员,高级会员会有优惠和特别的服务。还有就是支付方式了,一般网上书店都有三种类型的支付方式:汇款类支付、在线支付、其他支付方式,其中在线
15、支付只要到支付平台开户后,将所获开户信息填入即可。 当在网上书店购书后,用户所购图书都在网站上有记录,方便用户查询。 网上书店的优势:涉及范围广,经营成本低,劣势:信用度 如果低,影响生意 ; 现实书店的优势:直观,信用度高。劣势:涉及范围有限,经营成本高 ;现在有部分现实书店已经开始从网上书店进货了。 1.3 什么是 LAMP LAMP是 Linux+Apache+Mysql+Perl/PHP/Python缩写, LAMP是一组常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的 Web应用程序平台。 之所以要
16、制作这样一个网上书店是因为网上书店相对于实体店来说,它所涉及的范围更广,经营成本低,更能有效是适应今后社会的需求。也相信不久的将来网上书店将在一些年轻人的购书活动中起着主导的作用。现在有部分实店已经开始从网上书店进货。而现在社会上关于网上书店的争论是网上书店相对实体店来说不够直观,信用低等的缺点。不过同时我也相信这样的缺点在不久的将来也将会更好的被人们所解决。 LAMP 这个特定名词最早出现在 1998 年。当时, Michael Kunze 为德国计算机杂志 ct 写作的一篇关于自由软件如何成为 商业软件替代品的文章时,创建了 LAMP 这个名词,用来指代 Linux 操作系统、 Apach
17、e 网络服务器、 MySQL 数据库和 PHP ( Perl 或 Python)脚本语言的组合(由四种技术的开头字母组成)。由于 IT 世界众所周知的对缩写的爱好, Kunze 提出的 LAMP 这一术语很3 快就被市场接受。 OReilly 和 MySQL AB 更是在英语人群中推广普及了这个术语。随之 LAMP 技术成为了开源软件业的一盏真正的明灯。 目前,几乎在所有的 Linux 发布版中都默认包含了 “LAMP stack”的产品。这些产品组成了一个强大的 Web应用程序平台。 “LAMP stack”中的每一个组件都是一个 FOSS(免费或者 开源软件 /Free or Open S
18、ource Software)的实例。 FOSS 方法的好处有三个方面。第一, FOSS 软件的性质意味着应用程序可以免费下载,能够让更广泛的人们不用付费就可以使用这个应用软件。这种免费的方式对于广大用户特别具有吸引力。这些用户如果不使用免费的软件就需要付费购买 “专业 ”的商用软件工具。这在制作网站方面通常是一种昂贵的步骤。 FOSS 许可证是开放式的,因此对于基于 FOSS 技术的应用软件的使用和限制都 非常少。不需要为软件的发布支付任何许可证费就可以开发和应用基于 LAMP 的工程。因此,这对业余爱好者和专业人员都非常有吸引力。 FOSS 技术 (包括 LAMP)的增长和使用的主要原因是
19、因为用户能够访问其资源,修复故障和改善应用软件的性能都非常容易。与开源软件许可证结合在一起,这种方法为许多企业简化了开发过程,并且为企业提供了专有软件或者商业软件的限制中所没有的灵活性。 4 2 开发环境与开发工具介绍 2.1 开发环境 开发的环境为 Linux操作系统。 Linux是一类 Unix计算机操 作系统的统称。 Linux操作系统的内核的名字也是 “ Linux”。 Linux操作系统也是自由软件和开放源代码发展中最著名的例子。严格来讲, Linux这个词本身只表示 Linux内核,但在实际上人们已经习惯了用 Linux 来形容整个基于Linux内核,并且使用 GNU 工程各种工具
20、和数据库的操作系统。 Linux 操作系统是 UNIX 操作系统的一个克隆版本。 UNIX 操作系统是美国贝尔实验室的肯 汤普逊 Ken.Thompson 和丹尼斯 里奇Dennis Ritchie 于 1969 年夏在 DEC PDP-7 小型计算机上 开发的一个分时操作系统。当时 Ken Thompson 为了能在闲置不用的 PDP-7 计算机上运行他非常喜欢的星际旅行( Space travel)游戏,在 1969 年夏天乘他夫人回家乡加利福尼亚渡假期间,在一个月内开发出了 unix 操作系统的原型。当时使用的是 BCPL 语言(基本组合编程语言),后经 Dennis Ritchie 于
21、 1972 年用移植性很强的C 语言进行了改写,使得 UNIX 系统在大专院校得到了推广。 本次是开发还用到了 VMware这一虚拟计算机平台。 VMWare (Virtual Machine ware)是一个 “ 虚拟 PC” 软件公司 .它的产品可以使你在一台机器上同时运行二个或更多 Windows、 DOS、 LINUX系统。与 “ 多启动 ” 系统相比, VMWare 采用了完全不同的概念。多启动系统在一个时刻只能运行一个系统,在系统切换时需要重新启动机器。 VMWare 是真正 “ 同时 ” 运行,多个操作系统在主系统的平台上,就象标准 Windows应用程序 那样切换。而且每个操作
22、系统你都可以进行虚拟的分区、配置而不影响真实硬盘的数据,你甚至可以通过网卡将几台虚拟机用网卡连接为一个局域网,极其方便。安装在 VMware操作系统 性能上比直接安装在硬盘上的系统低不少,因此,比较适合学习和测试。 2.2 开发工具 Apache:次低层是 Apache,它是一个 Web 服务器。 Apache 提供可让用户获得 Web 页面的机制。 Apache 是一款稳定的、支持关键任务的服务器, Internet 上超过 65 的网站都使用它作为 Web 服务器。 PHP 组件实际上是在 Apache 中,动态页面可以通过 Apache 和 PHP 创建。 Apache 是世界使用排名第
23、一的 Web 服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于 其跨平台和安全性被广泛使用,是最流行的 Web服务器端软件之一。同时 Apache音译为阿帕奇,是北美印第安人的一5 个部落,叫阿帕奇族,在美国的西南部。也是一个基金会的名称、一种武装直升机等等 。 MySQL : MySQL 提供 LAMP 系统的数据存储端。有了 MySQL,便可以获得一个非常强大的、适合运行大型复杂站点的数据库。在 Web 应用程序中,所有数据、产品、帐户和其他类型的信息都存放在这个数据库中,通过 SQL 语言可以很容易地查询这些信息。 MySQL(发音为 “my ess cue el“,不是 “
24、my sequel“)是一种开放源代码的关系型数据库管理系统( RDBMS), MySQL 数据库系统使用最常用的数据库管理语言 -结构化查询语言( SQL)进行数据库管理。由于 MySQL是开放源代码的,因此任何人都可以在General Public License 的许可下下载并根据个性化的需要对其进行修改。 MySQL 因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下, MySQL是管理内容最好的选择。 MySQL这个名字,起源不是很明确。一个比较有影响的说法是,基本指南和大量的库和工具带有前缀 “my” 已经有 10年以上,而且不管怎样, MySQL AB
25、创始人之一的 Monty Widenius的女儿也叫 My。这两个到底是哪一个给出了 MySQL 这个名字至今依然是个迷,包括开发者在内也不知道。 MySQL 的海豚标志的名字叫 “sakila” ,它是由 MySQL AB的创始人从用户在 “ 海豚命名 ” 的竞赛中建议的大量的名字表中选出的。获胜的名字是由来自非洲斯威士兰的开源软件开发者Ambrose Twebaze提供。根据 Ambrose所说, Sakila来自一种叫 SiSwati的斯威士兰方言,也是在 Ambrose 的家乡乌 干达附近的坦桑尼亚的 Arusha 的一个小镇的名字。MySQL,虽然功能未必很强大,但因为它的开源、广泛
26、传播,导致很多人都了解到这个数据库。它的历史也富有传奇性。 PHP:PHP 是一门简单而有效的编程语言,它像是粘合剂,可以将 LAMP 系统所有其他的组 件粘合在一起。您可以使用 PHP 编写能访问 MySQL 数据库中的数据和 Linux 提供的一些特性的动态内容。 PHP 独特的语法混合了 C、 Java、 Perl 以及 PHP 自创新的语法。它可以比 CGI或者 Perl更快速的执行动态网页。用 PHP做出的 动态页面与其他的编程语言相比, PHP是将程序嵌入到 HTML文档中去执行,执行效率比完全生成 HTML标记的 CGI要高许多;PHP 还可以执行编译后代码,编译可以达到加密和优
27、化代码运行,使代码运行更快。PHP 具有非常强大的功能,所有的 CGI 的功能 PHP 都能实现,而且支持几乎所有流行的数据库以及操作系统 。 6 3 系统分析与设计 系统分析与设计的方法主要包括结构化生命周期法(又称瀑布法)、原型化方法(迭代法)、面向对象方法。 按时间过程来分,开发方法分为生命周期法和原型法,实际上还有许多处于中间状态的方法。原型法又按照对原型结果的处理方式分为试验原型法和演进原型法。试验原型法只把原型当成试验工具,试了以后就抛掉,根据试验的结论做出新的系统。演进原型法则把试好的结果保留,成为最终系统的一部分。按照系统的分析要素,可以把开发方法分为三类: 面向处理方法( P
28、rocessing Oriented ,简称 PO)。 面向数据方法( Data Oriented ,简称 DO)。 面向对象的方法( Object Oriented ,简称 OO)。 本系统的分析与设计主要包括有:系统分析和系统的设计。 3.1 系统分析 软件的需求分析在软件开发中起着至关重要的作用,它对于软件的质量往往具有决定性的意义。因此我们有必要充分的了解和论证系统所具有的功能和性能等。需求分析是一组活动的总称,作为系统分析员,必须协同系统用户共同完成。需求分析的任务是定义待开发的软件的功能、性能等指标,确定系统的综合要求和分析系统的数据要求。前者主要包含功能需求,性能需求,可靠性可用性需求和出错处理需求等,后者包括导出系统的逻辑模型和修正系统开发计划。 需求分析是软件定义时期的最后一个阶段 ,它的基本任务是准确地回答系统必须做什么的问题 .虽然在可行性研 究阶段已经粗略了解了用户的需求 ,甚至还提出了一些可行的方案 ,但是 ,可行性研究的基本目的是用较小的成本在较短的时间内确定是否存在可行的解法 ,因此许多细节被忽略了 .然而在最终的系统中却不能遗漏任何一个微小的细节 ,所以可行性研究并不能代替需求分析 ,它实际上
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。