https://www.bilibili.com/video/BV1ex4y12788/
演示视频:
3.系统设计
3.1系统B/S结构
车辆租赁管理系统是基于浏览器/服务器(B/S)技术的管理系统,解决传统的用户端/服务器模型结构存在的用户端(C/S)维护烦琐的问题,维护相对简单,具有良好的系统扩展性,方便管理。
本系统所面向的对象是广大的互连网用户。因此,将要采用比较流行的B/S三层结构。
图2-4-1 B/S三层结构图
B/S体系结构与B/S体系结构相比不仅具有其全部的优点,而且又有B/S体系结构所不具备的独特优势:
(1)开放的标准:B/S所采用的标准都是开放的、非专用的,是经过标准化组织所确定而非单一厂商所制定,保证了其应用的通用性和跨平台性。
(2)较低的开发和维护成本:B/S的应用只需在用户端安装通用的浏览器即可,维护和升级工作都在服务器端进行,不需对用户端进行任何改变,故而大大降低了开发和维护的成本。
(3)用户使用简单,界面友好:B/S用户的界面都在统一的浏览器上,浏览器易于使用、界面友好,又因为它不再负责数据的存取和复杂数据计算等任务,只需要进行显示,因而大大降低了对用户端的要求。
从以上的分析与比较可以看出,B/S模式具有B/S模式无法替代的优越性:它简化了系统的开发和维护,并且特别适用于网上信息发布。因此,本人开发的系统采用了基于B/S模式的体系结构。
3.2 开发软件
3.2.1 PHP技术
PHP,是英文超文本预处理语言Hypertext Preprocessor的缩写。PHP 是一种 HTML 内嵌式的语言,是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格有类似于C语言,被广泛地运用。
PHP 独特的语法混合了 C、Java、Perl 以及 PHP 自创的语法。
它可以比 CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。PHP具有非常强大的功能,所有的CGI的功能PHP都能实现,而且支持几乎所有流行的数据库以及操作系统。最重要的是PHP可以用C、C++进行程序的扩展!
3.2.2 Internet服务器
本系统运用了Asp技术,而IIS是Windows XP中的Internet服务管理器。通过安装和配置IIS后就可以运行ASP程序。Internet Information Server(IIS)内置在Windows XP操作系统中的网络文件和应用程序服务器中。ASP程序通过服务器解释后才可以在浏览器中运行,所以在Windows XP系统中必须安装IIS服务。IIS默认情况下安装在Windows XP中。IIS可以帮助Web管理员创建Web的应用程序。IIS集成安装向导、Web发布工具、集成的安全性和身份验证程序,以及对其他Web的应用程序的支持。
IIS(Internet Information Server),是微软公司主推的服务器,最新的版本是IIS 6.0,IIS与Windows NT Server完全集成在一起,因而用户能够利用Windows NT Server和NTFS(NT File System,NT的文件系统)内置的安全特性,建立强大,灵活而安全的Internet站点。
IIS支持HTTP(Hypertext Transfer Protocol,超文本传输协议)、FTP(File Transfer Protocol,文件传输协议)以及SMTP协议,通过使用CGI和ISAPI,IIS可以得到高度的扩展。
IIS支持与语言无关的脚本编写和组件,通过IIS,开发人员就可以开发新一代动态的,富有魅力的Web站点。IIS不需要开发人员学习新的脚本语言或者编译应用程序,IIS完全支持VBScript,JavaScript开发软件以及Java,同时也支持CGI和WinCGI,以及ISAPI扩展和过滤器。
IIS支持服务器应用的Microsoft BackOffice系列,Microsoft BackOffice系列包括以下内容:
Microsoft Exchange Server 用户/服务器通讯和群组软件;
Microsoft Proxy Server 代理服务器;
用于连接IBM企业网络的Microsoft SNA Server;
用于集中管理分布式系统的Microsoft Systems Management Server;
Microsoft Commercial Internet System(MCIS)。
IIS的设计目的是建立一套集成的服务器服务,用以支持HTTP,FTP和SMTP,能够提供快速且集成了现有产品,同时可扩展的Internet服务器。 IIS相应性极高,同时系统资源的消耗也是最少,IIS的安装,管理和配置都相当简单,这是因为IIS与Windows NT Server网络操作系统紧密的集成在一起,另外,IIS还使用与Windows NT Server相同的SAM(Security Accounts Manager,安全性账号管理器),对于管理员来说,IIS使用诸如Performance Monitor和SNMP(Simple Network Management Protocol,简单网络管理协议)之类的NT已有管理工具。
IIS支持ISAPI,使用ISAPI可以扩展服务器功能,而使用ISAPI过滤器可以预先处理和事后处理储存在IIS上的数据。用于32位Windows应用程序的Internet扩展可以把FTP,SMTP和HTTP协议置于容易使用且任务集中的界面中,这些界面将Internet应用程序的使用大大简化,IIS也支持MIME(Multipurpose Internet Mail Extensions,多用于Internet邮件扩展),可以为Internet应用程序的访问提供一个简单的注册项。
3.2.3 MySQL Server
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL的SQL语言是用于访问数据库的最常用标准化语言。MySQL软件采用了双授权政策(本词条“授权政策”),它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。由于其社区版的性能卓越,搭配PHP和Apache可组成良好的开发环境。
MySQL是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MySQL AB公司。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
与其他的大型数据库例如Oracle、DB2、SQL Server等相比,MySQL自有它的不足之处,如规模小、功能有限(MySQL Cluster的功能和效率都相对比较差)等,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。
系统特性:
1.使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性
2.支持AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris、Windows等多种操作系统
3.为多种编程语言提供了API。这些编程语言包括C、C++、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。
4.支持多线程,充分利用CPU资源
5.优化的SQL查询算法,有效地提高查询速度
6.既能够作为一个单独的应用程序应用在用户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中。
7.提供多语言支持,常见的编码如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名。
8.提供TCP/IP、ODBC和JDBC等多种数据库连接途径。
9.提供用于管理、检查、优化数据库操作的管理工具。
10.支持大型的数据库。可以处理拥有上千万条记录的大型数据库。
11.支持多种存储引擎。
3.2.4 Macromedia Dreamweaver 8
Macromedia Dreamweaver 8是建立Web站点和应用程序的专业工具。它将可视布局工具、应用程序开发功能和代码编辑支持组合在一起,其功能强大,使得各个层次的开发人员和设计人员都能够快速创建界面吸引人的基于标准的网站和应用程序。从对基于BS的设计的领先支持到手工编码功能,Dreamdreanweaver 8的工作界面和图标、(5张)weaver提供了专业人员在一个集成、高效的环境中所需的工具。开发人员可以使用Dreamweaver及所选择的服务器技术来创建功能强大的Internet应用程序,从而使用户能连接到数据库、Web服务和旧式系统。
Dreamweaver是在网页设计与制作领域中用户最多、应用最广、功能最强大的软件,随着Dreamweaver 8的发布,更坚定Dreamweaver在该领域的地位。它集网页设计、网站开发和站点管理功能于一身,具有可视化、支持多平台和跨浏览器的特性,是目前网站设计、开发、制作的首选工具。
1、灵活的编写方式Dreamweaver具有灵活编写网页的特点,不但将世界一流水平的“设计”和“代码”编辑器合二为一,而且在设计窗口中还精化了源代码,能帮助用户按工作需要定制自己的用户界面。
2、可视化编辑界面Dreamweaver是一种所见即所得的HTML编辑器,可实现页面元素的插入和生成。或视化编辑环境大量减少了代码的编写,同时亦保证了其专业性和兼容性,并且可以对内部的HTML编辑器和任何第三方的HTML编辑器进行实时的访问。无论用户习惯手工输入HTML源代码还是使用可视化的编辑界面,Dreamweaver都能提供便捷的方式使用户设计网页和管理网站变得更容易。
3、功能更多的CSS支持——CSS可视化设计、CSS检查工具。
4、动态跨浏览器验证当保存时系统自动检查当前文档的跨浏览器有效性,可以指定何种浏览器为测试用浏览器,同时系统自动检验以确定页面有没有目标浏览器不支持的tags或CSS结构。动态跨浏览器有效性检查功能可以自动核对tags和CSS规则是否适应目前的主浏览器。
5、强大的WEB站点管理功能。
6、内建的图形编辑引擎。
7、Dreamweaver的集成特性Dreamweaver 8继承了Fireworks、Flash和Shockwave的集成特性,可以在这些Web创作工具之间自由地切换,轻松地创建美观实用的网页。
8、丰富的媒体支持能力可以方便地加入Java、Flash、Shockwave、ActiveX以及其他媒体。Dreamweaver具有强大的多媒体处理功能,在设计DHTML和CSS方面表现得极为出色,它利用JavaScript和DHTML语言代码轻松地实现网页元素的动作和交互操作。Dreamweaver还提供行为和时间线两种控件来产生交互式响应和进行动画处理。
9、超强的扩展能力Dreamweaver还支持第三方插件,任何人都可以根据自己的需要扩展Dreamweaver的功能,并且可以发布这些插件。
3.3数据库设计
3.3.1数据库概念结构设计
根据上面的系统功能需求分析、业务流程分析和数据流程分析,就可以设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。这些实体包含各种具体信息,通过相互之间的作用形成数据的流动。
下面对主要的实体E-R图作一下展示。
整体E-R图如图3.3.1a所示:
图3.3.1a整体ER图
管理员实体E-R图如图3.3.1b所示:
图3.3.1b管理员E-R图
用户实体E-R图如图3.3.1c所示:
图3.3.1c用户实体E-R图
车辆信息E-R图如图3.3.1d所示:
图3.3.1d车辆信息E-R图
3.3.2数据库逻辑结构设计
数据库设计的好坏直接影响整个系统,如果数据库设计不好,不仅仅很多的业务处理起来相当的复杂和烦琐,而且在编写系统代码的时候也会遇到很多问题。所以,一个合理的数据库是必须的、是必要的。本系统的数据库结构在设计的时候注意到了规范命名和建立索引的必要性,系统的主要数据表如下:
系统用户:
车辆信息:
用户注册:
租车记录:
3.4系统的软硬件平台
1.用户机/服务器:采用Pentium II 或以上级别PC机,至少80M硬盘,512M内存,支持VGA或分辨率更高的显示器。
2.用户机/服务器操作系统:Window xp/7。
3.数据库:MySQL
3.网络:以太网组成的局域网,可设多台用户机。
4.系统操作实现
网站结构分为两个部分:管理员管理模块、用户管理模块。
3.1管理员操作
4.1.1登陆页面
图4.1.1登陆页面
此页面实现的功能是管理员和注册用户输入账号和密码,选择正确的权限进行登陆,此页面还有用户注册和密码找回功能。本模块的主要代码如下:
4.1.2管理员添加页面
图4.1.2管理员页面
此页面实现的功能是超级管理员对管理员进行添加、删除等操作,包含的信息:用户名、密码、确认密码、权限。代码略。
4.1.3车辆信息添加页面
图4.1.3车辆信息添加页面
此页面实现的功能是管理员对车辆信息进行添加操作,包含的信息:车牌、车型、品牌、颜色、换档类型、租金、可租时间、状态、照片、备注,上述内容可重置,实现本模块的主要代码如下:
4.1.4车辆信息管理页面
图4.1.4车辆信息管理页面
此页面实现的功能是管理员对车辆信息进行查询、修改、删除等操作,上方是搜索栏,下方是车辆信息,可根据车牌、车型、品牌等关键字段进行查找。实现本模块的主要代码如下:
4.1.5注册用户管理页面
图4.1.5注册用户审核页面
此页面实现的功能是管理员对注册用户信息进行查询、审核、修改、删除等管理操作,可根据账号、姓名等关键字段进行查找。实现本模块的主要代码如下:
4.1.6租车记录管理页面
图4.1.6租车记录管理页面
此页面实现的功能是管理员对租车记录进行查询、审核、修改、删除等操作,上方是搜索栏,下方是租车信息,可根据车牌、租车时间等关键字段进行查找。实现本模块的主要代码如下:
3.2用户操作
4.2.1用户注册页面
图4.2.1用户注册页面
此页面实现的功能是用户进行注册。包含的信息:账号、密码、姓名、性别、地区、Email、照片等内容。实现本模块的主要代码如下:
4.2.1个人资料修改页面
图4.2.1个人资料修改页面
此页面实现的功能是用户对个人资料进行修改。除了账号之外,其他都能改。代码略。
4.2.2租车记录添加页面
图4.2.2租车记录添加页面
此页面实现的功能是用户添加租车记录信息,用户只需要添加租用时间、租用时长、备注等信息即可,内容可重置,实现本模块的主要代码如下:
4.2.2已租查询页面
图4.2.2已租查询页面
此界面实现的功能是用户对已租车辆进行查询,可根据车牌、租车时间等关键字段进行查找。