




免费预览已结束,剩余46页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
项目管理系统目录目录I项目管理系统III摘要III前言V课题背景V项目管理系统概述V国内外研究情况VI本课题的意义及目的VI第一章 概述11.1 实验环境11.1.1 php技术特点11.1.3PHP与MySQL的结合11.1.4 Apache 简介21.1.5 PHP+MYSQL+Apache31.2三层模式的实现3第二章 需求分析52.1项目管理的目标52.2 项目管理系统特征62.3功能划分72.4功能设计7第三章 系统的数据库设计93.1数据库概念设计93.1.1数据库实体93.1.2数据库实体E-R图123.2数据库逻辑设计143.2.1 项目表 project153.2.2管理员表:users153.2.3项目负责人表 persons163.2.4进度控制表 plan163.2.5成本收入表 cost16第四章 功能模块设计184.1功能模块划分184.2系统功能模块描述184.2.1管理员登录模块184.2.2管理员信息维护模块184.2.3项目进度控制模块194.2.4项目付款管理模块194.2.5项目成本管理模块19第五章 系统实现205.1数据层的代码205.1.1数据层的核心代码205.2登录模块设计205.2.1登陆界面的核心代码215.3管理员信息维护模块设计225.3.1管理员信息维护模块核心代码235.4成本收入管理模块245.4.1成本收入管理模块核心代码245.5项目进度控制模块255.5.1项目进度控制模块的核心代码255.6项目付款管理275.6.1项目管理付款管理模块核心代码27第六章系统测试296.1系统测试的目标296.2系统测试的方法296.3系统测试29第七章 结论32体会和总结33谢辞34参考文献35附录一 翻译原文36附录二 翻译译文41项目管理系统摘要 本文在研究国内外项目管理信息系统的基础上,对项目管理信息系统进行了研究,提出了解决方案。本文研究并设计了基于php的项目管理信息系统,论文首先阐述了课题的来源、背景,以及国内外项目管理信息系统的发展现状,接着讲述了php作为系统设计开发的关键技术,随后对系统进行需求分析,建立了系统的功能模型。系统划分为项目维护,成本核算、项目查询、登录四个功能模块,实现了以项目及库存管理为核心的主要业务,以及相关辅助信息的管理功能。本文接着论述系统主要模块的关键技术及具体实现,采用了PHP、MySql、phpmyadmin、Dreamweaver等软件来实现了具体技术,初步达到了系统的需求。论文最后对系统的使用情况进行了介绍,并且对系统存在的不足进行了分析。 关键词: PHP,B/S,项目管理系统Project management systemABSTRACTBased on the research project management information system at home and abroad, based on the project management information system in-depth research, proposed solutions.Traditional project management information system is mainly based on C/S architecture, users are now unable to meet a wider area for the system to use, easy to maintain and extend, in particular project based manufacturing enterprises need.Research and design projects based on php management information system to address the lack of traditional management information systems.Paper described the first issue of the source, background, and domestic and international project management information system development, system design and development by php as the key technology, the system needs analysis, functional model of the system.Basic information system is divided into project management, contract management, inventory management, project management, system management of five functional modules, realized the project and inventory management as the core of the main business, and related ancillary information management.This article discusses the system and then the main module of the key technology and realization, introduced the PH P + JavaBean + Servlet and Struts framework as the development of specific technology, the system needs.Finally the use of the system were introduced, and the shortcomings of the system is analyzed. Keyword:PHP, SQL Server 2000,modeof B/ S前言课题背景 随着时代的进步与科技的发展,人类进入一个高度信息化的社会,在这个社会中,对于企业来说,网络为企业提供了一条跨越空间进入国际市场的捷径,充分利用网络资源可以获得更多的竞争优势。企业信息化能促使人们观念上的变化。企业的实力不仅是物资设备与资金的拥有,更重要的是信息资源及人力资源的拥有和利用。企业信息化能使企业全面改革工作流程和管理制度,提高管理人员素质,减少管理人员的工作压力,大幅度提高工作效率,降低运营成本,提高企业的管理水平。总之,企业信息化无疑为企业创建现代化企业制度,参与国际性竞争,提供了一条非常有效的途径,信息化是激发企业崭新活力的催化剂。建立管理信息系统是企业应用计算机实现整体化、集成化、信息化的必由之路,管理信息系统能根据企业生产经营、管理等各种运行情况,运用分析、计划、控制和决策模型,用信息支持决策,集中反映企业的经营管理、生产设计、物料需求与采购管理、生产计划管理、成本核算,提高产品质量,降低产品成本,缩短生产周期,增加生产柔性,提高应变能力,达到企业发展的长远目标。项目管理系统概述项目管理系统就是项目的管理者应用专门管理项目的系统软件,在有限的资源约束下,运用系统的观点、方法和理论,对项目涉及的全部工作进行有效地管理。即从项目的投资决策开始到项目结束的全过程进行计划、组织、指挥、协调、控制和评价,以实现项目的目标。按照传统的做法,当企业设定了一个项目后,参与这个项目的至少会有好几个部门,包括财务部门、市场部门、行政部门等等,而不同部门在运作项目过程中不可避免地会产生摩擦,须进行协调,而这些无疑会增加项目的成本,影响项目实施的效率。而项目管理的做法则不同。不同职能部门的成员因为某一个项目而组成团队,项目经理则是项目团队的领导者,他们所肩负的责任就是领导他的团队准时、优质地完成全部工作,在不超出预算的情况下实现项目目标。项目的管理者不仅仅是项目执行者,他参与项目的需求确定、项目选择、计划直至收尾的全过程,并在时间、成本、质量、风险、合同、采购、人力资源等各个方面对项目进行全方位的管理,因此项目管理可以帮助企业处理需要跨领域解决的复杂问题,并实现更高的运营效率。国内外研究情况项目管理系统的应用从80年代仅限于建筑、国防、航天等行业迅速发展到今天的计算机、电子通讯、金融业甚至政府机关等众多领域。目前在国内,对项目管理认识较深,并要求项目管理人员拥有相应资格认证的还主要为大的跨国公司、IT公司等与国际接轨的企业。项目管理系统是基于现代管理学基础之上的一种新兴的管理学科,它把企业管理中的财务控制、人才资源管理、风险控制、质量管理、信息技术管理(沟通管理)、采购管理等有效的进行整合,以达到高效、高质、低成本的完成企业内部各项工作或项目的目的。本课题的意义及目的在机遇与挑战并存下,企业面临着前所未有的竞争压力,企业必须尽快调整产业结构、优化资源配置、转变经营理念、实施科学管理,建立起一套适用的管理系统来应对瞬息万变的市场环境。项目管理系统的实施,可以大大提高工程项目型制造企业项目实施的进度、质量,提高企业的管理水平及市场竞争能力,产生显著的经济效益和社会效益。所以,项目管理系统的研究与设计,是一个具有重要意义的课题。 VII第一章 概述1.1 实验环境PHP是近年发展起来的一种新兴的语言。它是一种服务器端、跨平台、HTML嵌入式的脚本语言。其工作方式与ASP相似,其主要功能也是用来开发动态交互式的Web服务器应用程序。PHP酝酿于1994年,1995年发布其第一个公开版本,目前己发展为版本5.0。1.1.1 php技术特点()、PHP是GUN标准的自由软件。()、语法简单、易学易用。()、面向对象编程能力。()、支持众多网络协议。()、具有强大的数据库操作能力和丰富的函数库。()、移植性强、跨多个平台。()、执行效率高。和其它的语言相比,PHP系统消耗较少的系统资源。1.1.2PHP与MySQL的结合SQL查询语句用户WEB 浏览器 PHP系统服务器MySQL数据库及其管理系统结果返回 Internet服务请求返回结果 MySQL是一个快速而又健壮的关系数据库管理系统(RDBMS)。这个数据库将允许你高效地存储、搜索、排序和检索数据。MySQL服务器控制对数据的访问,从而确保多个用户可以并发地使用它,同时提供了快速访问并确保只有通过验证的用户才能获得数据访问。因此,MySQL是一个多用户、多线程的服务器。它使用的查询语言(SQL)是全球通用的标准数据库查询语言。在实际的PHPMySQL+Web系统中,用户和系统一次典型的交互过程如下图示:图1-1从图中可以看出:首先,当用户通过浏览器使用Web系统时,浏览器接收用户的请求,并通过Internet传送到PHP服务器;然后,PHP服务器分析用户的请求,并通过数据库接口函数向后台数据库管理系统发送SQL查询语句;最后,MySQL接收至SQL语句,执行相应的操作。反过来,MySQL执行SQL查询语句后,将查询结果数据发送到PHP服务器:后者在对结果集进行相应的处理后,将其传递给前台的浏览器把数据按一定形式显示给用户。这就是典型的PHPMySQL Web系统的体系模式。PHP访问MySQL的方法有两种:()、利用PHP的数据库函数连接。()、通过ODBC连接。上述两种方法在与数据库建立连接的语法上,并没有太大差别。不过在相比较之下,通过ODBC方式存取数据库比PHP直接存取MySQL耗时间,但通过ODBC接口存取数据库不必担心使用何种数据库,如Oracle、Informix、Sybase等。它们都支持ODBC接口,这样可减少更换数据库时需要更改程序的问题。1.1.3 Apache 简介Apache服务器是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上。Apache源于NCSAhttpd服务器,经过多次修改,成为世界上最流行的Web服务器软件之一。Apache取自“a patchy server”的读音,意思是充满补丁的服务器,因为它是自由软件,所以不断有人来为它开发新的功能、新的特性、修改原来的缺陷。Apache的特点是简单、速度快、性能稳定,并可做代理服务器来使用。 Apache web服务器软件拥有以下特性:(1)支持最新的HTTP/1.1通信协议(2)拥有简单而强有力的基于文件的配置过程(3)支持通用网关接口、支持基于IP和基于域名的虚拟主机、支持多种方式的HTTP认证。(4)集成Perl处理模块、集成代理服务器模块(5)支持实时监视服务器状态定制服务器日志、支持服务器端包含指令(SSI)、支持安全Socket层(SSL)(6)提供用户会话过程的跟踪(7)支持FastCGI(8)通过第三方模块可以支持Java Servlets1.1.4 PHP+MYSQL+Apache综上并结合作者查阅的相关资料有对于要设计的项目管理系统采用 PHP+MYSQL+Apache的结合可以实现编程、存储、运行功能,故本文将主要采用这三个工具来实现。1.2三层模式的实现三层模式是将系统功能分成表示层、功能层和数据层,对这三层进行明确分割,并在逻辑上使其独立。原来的数据层作为DBMS已经独立出来,所以关键是要将表示层和功能层分离成各自独立的程序,并且还要使这两层间的接口简洁明了。一般情况是只将表示层配置在客户机中,如图所示。如图所示的那样连功能层也放在客户机中,就类似两层B/S模式,除了程序的可维护性要好之外,但是其他问题并未得到解决,如客户机的负荷太重、业务处理所需的数据要从服务器传给客户机等。如果将功能层和数据层分别放在不同的服务器中,如下图所示,则服务器和服务器之间也要进行数据传送。但是,由于在这种形态中三层是分别放在各自不同的硬件系统上的,所以灵活性很高,能够适应客户机数目的增加和处理负荷的变动,例如在追加新业务处理时,可以相应增加装载功能层的服务器,因此,系统规模越大这种形态的优点就越显著。在三层B/S中,表示层是应用程序的用户接口部分,它担负着用户与应用程序之间对话的功能,用于检查用户从键盘输入的数据、显示应用输出的数据。为使用户能直观地进行操作,一般要使用图形用户接口(GUI)。在变更用户接口时,只需改写显示控制和数据检查程序,而不影响其他两层。该层检查的内容也也只限于数据的形式和值的范围,不包括有关业务本身的处理逻辑。功能层是应用程序的主体,它进行具体的业务逻辑处理。表示层和功能层之间的数据交互要尽可能地简洁。数据层就是DBMS,负责管理对数据库数据的读写,DBMS必须能迅速执行大量数据的更新和检索。现在的主流是关系数据库管理系统(RDBMS),因此从功能层传送到数据层的要求大都使用SQL语言。在三层或多层模式中,中间件(MiddleWare)是最重要的部件。所谓中间件是一个用API定义的软件层,是具有强大通信能力和良好可扩展性的分布式软件管理框架。它的功能是在客户机与服务器或者服务器与服务器之间传送数据,实现客户机群和服务器群之间的通信。中间件在整个分布式系统中起数据总线的作用,各种异构系统也可以通过中间件有机地结合成一个整体。本设计中采用的就是这种模式。第二章 需求分析 2.1项目管理的目标一个成功的项目,通常有三个要素:时间要素,指完成的时间要“快”;成本要素,指完成工作的成本要“便宜”效果的要素,即工作完成的表现要“好”。具体的说这三方面指的是:(1)、“好”好的项目首先是功能上要满足客户的基本使用需求,同时质量可靠,安全性能得到保障。项目外观美观、独特能让人产生愉悦感。(2)、“快”要达到预期完工的要求,需要懂得怎么把一个规模大、时间长的项目,分成不同的阶段来完成。但是在每个阶段,实施起来却很困难,因为需要每个环节都不是单独,需要多部门的相互配合与协作。因此计划和实施都需要根据具体情况具体分析。(3)、“便宜”一个项目该花多少钱,是应该可以准确地算出来。通常实际的投资和预期的投资基本上可以控制在一定得范围内。但并不一定是用的钱越少,就越便宜,便宜是相当于项目的有效价值来说的,同样的投资中产生的工程项目的有效价值越高,即越便宜,否则,反之。总之,项目管理的目标是又快、又好、又便宜。但由于各种原因,项目很难同时达到三个目标的最大值,相当多的时候需要取舍。在具体的工程项目在实施过程中,需要及时有效地处理很多项目实施过程中的具体情况,才能保证项目的成功实施。2.2 项目管理系统特征(1)、 项目维护项目管理系统需要用来获得项目中各项活动、资源的有关情况,从而在项目管理过程中,可以就单个资源、团队资源或整个项目的实际成本与预算成本进行实时的记载和分析,从而在计划和汇报工作中利用这些信息来做计划。(2)、成本核算对于有大量活动事项的项目工程通常都是十分复杂的,故在对其成本进行计算即使用计算机也是一项极其乏味且容易出错的工作,所以对成本进行反复计算、核对以达正确是十分必要的。故项目管理系统的一个的特点就是能有成本核算这项功能。(3)、项目查询项目管理系统应该允许相关工作人员对其所在项目进行查看以得到自己所要作的工作的实时状态,从而为更好的与团队协作达到一致。但这些员工对相关项目的查询的权限宜是有限的,另外,对于项目的更新也需要网络管理员与项目负责人在步调上达成一致。(4)、登录界面在实际应用中,需要登录项目管理系统的对象只有对项目进行管理的工作人员,其他人都不能登录该系统。(5)添加项目界面主要用于添加项目(6)删除项目界面主要用于删除项目(7)修改项目界面主要用于修改项目(8)项目进度控制界面主要用于查看、管理项目进度,比如项目的开始时间、结束时间、进度、完成度。(9)成本收入查看主要用于查看项目成本、收入。本系统是项目管理系统,经过在去开发项目的公司里走访调查并收集资料,现在他们存在的问题是在项目管理上陈本开支太大,管理费用高昂。主要有一下几个问题:1、项目开发进度难以控制,导致效率低下无法预期未来的2、项目成本和收入核算比较难3、项目负责人不明确,各部门的职责不明确4、还处于人工化的管理阶段,没有采用计算机处理技术通过以上问题我们就知道现在的项目开发公司没有一套合理的管理软件,我设计的项目管理系统的目的是理者可以通过该软件实现在有限的资源下,运用系统的观点,方法和理论,对项目涉及的全部工作进行有效的管理。即从项目的投资决策到项目结束的全过程,对项目进行周密计划,对人员进行合理的组织、指挥,对各个部门进行协调,以及对项目成本的控制和评价。以高效、高质、低成本实现项目的目的目标2.3功能划分经过以上的分析,本系统主要的实现的功能有以下几个:1、添加项目、删除项目、查看项目信息2、项目的成本和收益管理3、项目的进度控制4、项目付款情况查看5、用户信息维护,添加、修改、删除个人信息2.4功能设计系统流程图体现了系统的工作流程,图2-4是本系统的流程图,从图中可以看出只有合法的用户才可以登录系统。如果用户输入的信息不正确则不能登录该系统,比如用户名错误或者是密码错误。如果信息验证失败则返回登录界面,并提示错误信息。用户成功登陆后就可以进入系统的后台,管理项目信息,如图中所示的添加项目、修改项目、删除项目、成本收入管理、项目进度控制、项目付款管理、用户信息维护。验证用户信息是保证系统安全的主要措施之一。系统流程图,如图2-4用户验证用户密码失败添加项目修改项目删除项目成本收入管理项目进度控制项目付款管理用户信息维护验证成功图 2-4系统流程图第三章 系统的数据库设计3.1数据库概念设计数据库概念设计的目的主要是分析数据涉及到哪些实体,实体有哪些属性。数据库概念设计是为数据库逻辑设计做准备的。这也是设计数据库的第一步对数据库的进行需求分析。数据库的概念设计的主要是用图形化表示实体和属性之间的关系,图形化的表现出这些实体有哪些属性,这种表示比较直观。数据库概念设计也是数据库设计的第一步,即数据库设计的需求分析。首先分析一下我的所要做的系统是项目管理系统,项目管理系统主要涉及这些实体:第一个就是管理员,这是保证系统安全性必须要做的措施之一;第二个就是项目了,我的项目管理系统就是用来管理项目,所以项目这个实体比较重要,这也是整个数据库中的核心;第二个就是成本收入,这个实体 代表的意思是项目的成本和收入,设计这个实体的主要目的是为了管理项目的成本收入;第三个实体就是进度控制,本来这是个动词,我为什么要把它抽象成实体呢?因为这是主要涉及到控制项目的进度的问题,所以为了能够控制项目的进度,故我把这个实体抽象出来,这样他就能够更好的控制项目的进度了。3.1.1数据库实体经过以上分析,数据库的实体主要包括以下几个:(1)项目实体:主要包括项目编号、项目名称、项目标书、负责人、开始时间、结束时间、付款、成本、收入、进度、是否完成11个字段(2)管理员实体:主要包括管理员编号、管理员姓名、管理员密码、管理员的电子邮件、管理员的电话号码5个字段、(3)项目负责人实体:主要包括负责人编号、负责人姓名、负责人的电子邮件、负责人的电话号码4个字段(4)进度控制实体:进度控制编号、进度数、项目编号、项目开始时间、结束时间5个字段(5)成本收入实体:编号、成本、收入、项目编号4个字段。以下图形表示实体和属性之间的关系。1、项目体的属性如图3-1所示项目项目编号项目名称项目描述负责人开始时间结束时间付款成本收入进度是否完成图3-1项目实体图属性解释:项目编号表示实体存储在数据库的表中的主键,项目名称表示项目的名字,项目描述是描述项目,负责人指的是负责项目的人,开始时间是指项目的开始时间,结束时间是指项目完成项目的时间,是否完成表示项目完成的标志位,如果为1表示项目已经完成,如果为0表示项目未完成。进度表示项目的完成了多少,主要用百分数表示。收入表示项目的收入,项目的成本表示的项目开发的成本,付款表示的是客服是否已经付款了,如果为1则表示已经付款,为0表示没有付款,注意这里不是表示付了多少钱。2、管理员实体的属性如图3-2所示管理员电子邮件电话号码密码管理员编号管理员编号姓名图3-2管理员实体图属性解释:管理员编号表示管理员实体存储在数据库中的表的主键,密码表示管理员登录系统所需要的密码,电话号码表示管理员的电话号码,电子邮件表示管理员的电子邮件,注释这些主要是要和项目负责人的的属性相区别开,虽然名字相同但是表示的含义不一样。3、项目负责人实体图如图3-3属性解释:编号表示项目实体存储在数据库表中的主键,具有唯一性,不能重复;这里的电话号码表示是项目负责人的电话号码,姓名表示项目负责人的姓名,电子邮件表示项目负责人的电子邮件;项目编号是外键是项目实体的主键。项目负责人姓名电子邮件电话号码编号项目编号图 3-3项目负责人实体图4、进度控制实体的属性如图3-4所示: 进度控制进度控制编号开始时间项目编号完成时间进度数图3-4进度控制实体图进度控制实体的属性解释:进度控制编号表示存储进度控制实体在数据库表中的编号,他是唯一的,是这张表的主键。项目编号是该表的外键,是项目表的主键,表示进度控制实体和项目实体是关联的。开始时间表示存储的是项目的开始时间,结束时间表示存储的是项目的结束时间,进度数存储的项目完成度,用百分数表示。5、成本收入实体的属性如图3-5所示收入成本收入编号成本项目编号图3-5成本收入实体图属性解释:该图表示的实体是成本收入实体图,项目编号、编号、成本、收入是该实体的属性。编号表示是该实体的存储在数据库表中的主键,他是用于区分不同的字段的,他是唯一的。收入属性表示项目的收入,成本属性表示项目的成本。项目编号是该表的外键,是项目表的主键,表示陈本收入实体和项目实体是关联的3.1.2数据库实体E-R图数据库概念模型的设计,其中最常用方法是实体-联系方法,简称E-R方法。该方法直接从现实世界中抽象出实体和实体之间的关系,然后用E-R图来表示数据库模型。在E-R图中实体用方框表示,联系用菱形表示,并且用边将其有关的实体连接起来,并在边上标上联系的类型;属性用椭圆表示,并且用边将其与有关的实体连接起来。对于有些联系,其自身也会有某些属性,同实体与属性的连接类似,将联系与其属性连接起来。项目管理中的实体有项目、成本收入、进度控制、项目负责人。他们之间的关系是:项目实体和成本收入实体之间是式一对一的关系,一个项目只能有一个陈本和一个收入;项目实体和进度控制实体之间是一对一的关系,一个进度控制实体只能控制一个项目实体;项目负责人和项目实体之间是一对多的关系,一个人可以负责多个项目,但是一个项目只能被一个人管理。由于项目的属性太多了,所以此处就没有画出来,如数据库的E-R图,如图3-6所示:项目成本收入项目编号成本收入属于项目负责人项目编号姓名电子邮件电话号码负责11N1编号进度控制编号项目编号开始时间结束时间进度数控制11编号图3-6 ER图3.2数据库逻辑设计数据库逻辑设计决定了数据库及其应用的整体性能,调优位置。如果数据库逻辑设计不好,则所有调优方法对于提高数据库性能的效果都是有限的。为了使数据库设计的方法走向完备,数据库的规范化理论必须遵守。规范化理论为数据库逻辑设计提供了理论指导和工具,在减少了数据冗余的同时节约了存储空间,同时加快了增、删、改的速度。以下数据表是项目管理系统中所用到的表。3.2.1 项目表 project这张表用来存储项目的信息,如项目编号,项目名称,项目负责人姓名,项目描述,项目开始时间,项目结束时间,成本,授予,完成度,是否完成标志位,是否付款标志位等。 表 3-1项目信息表字段名Z字段类型字段大小字段说明Project_idint8项目编号Projectnamenvarchar50项目名称Personnamenvarchar50项目负责人姓名Projectdescriptiontext1000项目描述Starttimenvarchar50项目开始时间Endtimenvarchar50项目结束时间Costdouble12成本Profitdouble12收益Completeint81为完成,0为没有完成completenessnvarchar50完成度PayInt81为已付款,0为没有付款3.2.2管理员表:users这张表是用来管理员信息,比如管理员编号、管理员姓名、登录状态、电子邮件、电话号码。表3-2 管理员信息表字段名Z字段类型字段大小字段说明useridint8管理员编号usernamenavarchar50管理员姓名logininInt81为登录,为没有登录Emailnvarchar50电子邮件phonenumbernvarchar50电话号码3.2.3项目负责人表 persons这张表主要存储项目负责人信息,比如负责人编号、姓名、电子邮件、电话号码。表3-3项目负责人信息表字段名字段类型字段大小字段说明personidint8负责人编号usernamenavarchar50姓名Emailnvarchar50电子邮件phonenumbernvarchar50电话号码3.2.4进度控制表 plan项目控制表主要存储项目的进度控制信息,如进度控制编号、项目编号、项目开始时间、项目完成时间、完成度、完成标志位。表 3-4进度控制信息表字段名字段类型字段大小字段说明planidint8进度控制编号Project_idint8项目编号Starttimenvarchar50开始时间Endtimenvarchar50完成时间completenessnvarchar50完成度completeint81完成,0没有完成3.2.5成本收入表 cost成本收入表主要存储成本收入编号、项目编号、付款情况、成本、收入。表3-5成本收入信息表字段名字段类型字段大小字段说明costidInt8成本收入编号Project_idint8项目编号PayInt81为已付款,0为没有付款costfloat12成本profitfloat12收益第四章 功能模块设计4.1功能模块划分本系统是项目管理系统,是公司等专用系统,设计这个系统的目的主要是让功能很好的管理自己的项目,让管理更加科学、方便,减少人力物力的开支。本系统主要包括以下几个功能:(1) 管理员登录模块(2) 管理员信息维护模块(3) 项目进度控制模块(4) 项目付款管理模块(5) 项目成本管理模块4.2系统功能模块描述系统功能模块的描述主要描述的是用户该系统的每个模块有什么作用,它能给用户提供什么方便,是怎么样去帮助用户去管理项目。4.2.1管理员登录模块为了保护系统安全和使用该系统的人或公司的信息安全,因此设计了该模块,该模块要求只有合法的管理员才能进入该系统,比如一般人是不能进人该系统的,保证系统的安全性。该模块设计要求有,如果用户输入的用户名或者密码错误则不能登录系统后台对项目进行管理。管理员的信息是存储在数据库的,管理员登陆是首先要输入用户名和密码,让后系统从数据库中读取数据库,并和数据的信息进行对比,如果他们的相等,也就是说输入的信息和数据库中读出来的信息相同,则用户就可以成功登陆,否则用户只能停留在登陆界面而进入后台对项目信息进行管理。4.2.2管理员信息维护模块这基本是每个系统都需要有的模块,所以我的这个系统也不能缺少该模块,该模块主要有管理员能修改自己的信息,包括姓名、密码、电子邮件、电话号码,这也是为了保证信息安全所必须要的,经常更换管理员的密码才能防止非法用户进入该系统。管理员进入后台后,如果要想修改自己的信息,只需要现在登录后的界面中的点击修改用户资料,就会进入用户资料修改的界面。4.2.3项目进度控制模块该模块主要是对项目进度进行控制,涉及到项目的开始时间、结束时间、项目进度等信息的管理,设计该模块的目的是让管理项目的人员更加合理的管理项目的进度,这样可以提高管理的效率,减低管理的成本。我进入系统后,点击右边的进度控制选项,则我们就可以查看项目进度控制的情况,我也也可以修改项目的进度情况。4.2.4项目付款管理模块该模块主要是对项目的付款情况进行管理,这是需求分析中所必须要做的一步,项目的付款情况可以让管理者知道哪些项目已经付款,哪些项目还没有付款。由于技术有限,我再设计系统是,为了减低难度,把已经付款的用1表示,把没有付款的用0表示。该界面显示的内容是项目名称,付款情况,我们也可以在编辑项目中选择编辑项目的付款情况,这样我就可以设置项目的付款情况了。4.2.5项目成本管理模块该模块主要是对项目的成本进行管理,我们进入系统后,单击右边的项目成本收入查看,我们就可以查看每个项目的成本、收入了,但是我们要修改项目的成本和收入,还得单击项目编辑,我们才能进入项目编辑的界面,对项目的成本和收入进行控制。第五章 系统实现5.1数据层的代码 这个页面主要是把访问数据库的公共代码放在一个页面,比如连接数据库、编码的格式统一。把他们放在一起的主要目的是增加代码的重用率,这可以提高开发系统的效率。5.1.1数据层的核心代码主要定义了全局变量$connection,用于连接数据库,编码采用gb23121. 5.2登录模块设计登录模块的设计主要是用来验证用户的身份的,就相当于进入系统的一道门,只有有了这道门的钥匙才能进入,否则不能进入。当用户只输入用户或者密码是,他会提示如图5-1所示。当用户密码输入错误时会提示,如图5-2所示图5-1用户信息输入不完整图5-2密码错误的图登录界面如图5-3所示图5-3 登陆界面图片5.2.1登陆界面的核心代码1. ?2. header(Content-Type: text/html; charset=gb2312);3. /* 对网页中显示的数据编码为gb2312*/4. /* confirmUser函数检查用户名和密码是否正确*/5. function confirmUser($username, $password)6. $q = select password from users where username = $username;7. /* 查询users表中的密码,条件是username的值等于用户输入的值*/8. $result = mysql_query($q, $connection);、9. /*执行查询语句,并返回查询的结果*/ 10. if(!$result | (mysql_numrows($result) 1)11. /* 如果查询结果的函数小于1或者结果为空则表示不存在*/12. return 1; /用户验证失败 13. $dbarray = mysql_fetch_array($result);/读取查询结果的值14. /保存用户的密码15. $dbarraypassword = stripslashes($dbarraypassword);16. /*验证密码是否正确 */17. if($password = $dbarraypassword)18. return 0; /用户名和密码正确19. elsereturn 2; /密码错误20. /检查用户是否登录21. function checkLogin()22. /*验证用户和密码 */23. if(isset($_SESSIONusername) & isset($_SESSIONpassword)24. /用户和密码错误则销毁变量if(confirmUser($_SESSIONusername, $_SESSIONpassword) != 0)unset($_SESSIONusername);/销毁变量25. unset($_SESSIONpassword);26. return false; return true;27. /* 用户没有登录*/28. else return false; 5.3管理员信息维护模块设计界面如图5-4所示,我们单击编辑用户资料后页面会连接到编辑用户资料的界面,给界面用文本框输出了用户的所有资料,这些内容都是可以编辑的,用户编辑资料后单击提交,则用户的资料就会提交到系统,系统同时会更新数据库。如果用户修改里自己的密码,则必须记住密码,因为我设计的这个系统没有找回密码的功能。图5-4管理员信息维护模块的界面图5.3.1管理员信息维护模块核心代码1. /* editUser用于处理用户信息的函数 */2. function editUser() 3. global $connection;/* 定义全局的连接字符串*/4. $id=sanitize($_POSTid);/用$id存储提表单提交的id值5. /用$username存储提表单提交的username值6. $username=sanitize($_POSTusername); 7. /用$email_addr存储提表单提交的email_addr值8. $email_addr=sanitize($_POSTemail_addr); 9. /用$ph_num存储提表单提交的ph_num值10. $ph_num= $_POSTph_num; 11. /* 判断用户输入新的密码和旧的密码是否为空,如果两者同时不为空则修改自己的信息 */12. if (!$_POSTpassword_new= & !$_POSTpassword_current=)13. $password= $_POSTpassword_new; 14. /* 更新users表中id等于$id的记录,主要更新的内容有用户名,电子邮件的地址,电话号码,密码*/15. $sql = UPDATE users SET 16. Username =$username;email_addr=$email_addr, ph_num=$ph_num, 17. password=$password WHERE id=$id;18. else 19. $sql = UPDATE users SET first_name=$first_name,20. last_name=$last_name ,email_addr=$email_addr,21. ph_num=$ph_num22. WHERE id=$id;23. mysql_query($sql);/在数据库服务器上,执行更新操作24. 5.4成本收入管理模块该模块的设计目的是用来管理项目的成本收入情况的,如图5-4-1所示,我们可以查看每个项目的成本和收入。界面设计如图:5-5图5-6成本收入查看管理界面图5.4.1成本收入管理模块核心代码1. ?php2. global $connection; /* 定义连接数据库的全局变量 */3. echo /* 显示内容区域 */4. /* 显示左边区域 */5. / * 显示头部区域 * /6. 管理员
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年教师招聘之《小学教师招聘》练习题库包含完整答案详解(全优)
- 2025年教师招聘之《小学教师招聘》通关练习题和答案含答案详解【完整版】
- 2025年页岩气开采技术变革的环境影响评估与产业竞争力分析报告
- 洞察2025年:医药企业研发管线耳鼻喉科药物研发成功案例报告
- 《汽车制造工艺学》习题及答案1
- 洞察2025年运动医学医疗市场增长动力:技术创新趋势与市场分析报告
- 2025年功能性食品行业市场前景展望报告:消费需求分析与创新产品路径
- 纺纱工综合考核试卷及答案
- 照明设计师工艺考核试卷及答案
- 道路货运调度员质量管控考核试卷及答案
- 排污许可培训课件
- 迪拜果蔬市场发展趋势与前景分析
- 2025年调饮师职业技能竞赛(省赛)考试题库(含答案)
- 班级量化管理方法分享
- 土方倒运施工方案作业方案
- 工程部员工绩效考核方案
- 数学 第一册(五年制高职) 课件 3.3.1增函数与减函数的定义
- 抢救车管理制度
- Python工程应用-数据分析基础与实践课件-第3章
- 应急处突知识培训课件
- 光伏并网发电项目施工进度计划范文
评论
0/150
提交评论