三维网络服装店的数据库搭建---毕业论文_第1页
三维网络服装店的数据库搭建---毕业论文_第2页
三维网络服装店的数据库搭建---毕业论文_第3页
三维网络服装店的数据库搭建---毕业论文_第4页
三维网络服装店的数据库搭建---毕业论文_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

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

文档简介

本 科 毕 业 论 文 三维网络服装店的数据库搭建 Database Structure for Web-based 3D Clothing Store姓 名:学 号:学院:软件学院系:软件工程专 业:软件工程年 级:指导教师: 年 月摘要随着社会的发展,网络的普及,网上购物已成为在线业务的重要载体,人们可以随时随地在网上交易。如今人们越来越追求时尚、讲究个性,注重购物的环境,网上购物,更能体现个性化的购物过程。传统的虚拟购物系统只能提供商品的简单二维图片,难以反映商品的整体形象,也无法实现客户与系统之间的交互。为了真实地展现商品的外形及其各种功能,在电子商务中建立三维的虚拟购物系统,将使网络购物更贴近现实生活、更具有竞争力。本系统的目标是建立三维网络服装店模型,并通过数据库动态更新虚拟商店中的商品相关信息,用户登录系统后通过网络与系统交互,完成虚拟服装店漫游、商品选购及支付行为。本人负责的任务是利用MySQL建立系统数据库,结合PHP脚本语言实现交互时对数据库的增、删、改、查操作,并实现PHP页面和Virtools之间信息的传递过程。本系统的任务是通过Maya、Virtools和PHP三种技术的结合来实现系统的目标。课题的最主要难点在于如何将PHP页面中提取到的数据库信息传递到Virtools中。为了解决这一问题,本人先确定了系统的主要任务并介绍了实现该系统所要用到的技术,然后分析系统功能模块和具体流程,完成数据库的设计。接着开始进行系统的具体设计与实现,最后通过调试运行,系统基本能够完成本论文分析得出的系统功能,使用户可以在三维虚拟环境下进行网络购物的操作。关键词:数据库设计;PHP;Virtools消息传递AbstractWith the development of society, the networks popular online shopping has become an important carrier of online business, people in online transactions anytime, anywhere. Now there is a growing fashion and personality online shopping, it can reflect the personalized shopping process. The traditional virtual shopping system can only provide a simple two-dimensional image commodities, can not reflect the overall image of the goods and achieve the interaction between the client and the system. In order to truly show the shape of goods and its various functions in the establishment of three-dimensional virtual e-commerce shopping system, online shopping will be closer to real life, and more competitive.The systems goal is to build a three-dimensional virtual clothing store model, and update information about the goods in the virtual store dynamically, interact with the system through the network after the user logs on the system, the virtual clothing store roaming, commodity purchase and payment behavior. My task is to use MySQL database, PHP scripting language to finish the functions of database operation, then achieve the goal of message passing between PHP page and Virtools.The task of this system is achieve system goals through Maya, Virtools, and PHP. Most difficult issues is how to extract the PHP pages to the database information is passed to the Virtools in. To solve this problem, I first determine the main tasks of the system and introduced the use of the system to achieve the technical, functional modules and analysis system and specific processes, to complete the database design. Then start with the actual design and implementation, and finally through the debugging and running, the system can achieve the basic functions of online shopping solution to meet user needs.Key words: database design; PHP; virtools information transfer目 录第一章 引言11.1系统任务概述11.2系统开发技术背景11.2.1PHP技术介绍11.2.2MySQL介绍31.2.3Apache介绍41.3国内外研究现状41.4课题研究的目的与意义51.5论文的组织结构5第二章 系统分析与数据库设计62.1系统功能与流程分析62.2数据库设计82.2.1数据库需求分析82.2.2数据库概念结构设计92.2.3 E-R图向关系模型的转换92.2.4数据库逻辑结构设计122.3本章小结14第三章 系统功能具体实现153.1系统运行环境安装153.2功能具体实现与主要代码193.2.1用户注册193.2.2用户登录213.2.3场景漫游253.2.4浏览商品253.2.5购物车283.2.6购物结算303.3本章小结33第四章 系统测试运行结果344.1运行结果展示344.2本章小结41第五章 总结与展望425.1论文总结425.2未来展望42参考文献44致 谢45III第一章 引言ContentsChapter 1 Introduction11.1 System overview11.2 Technical background11.2.1 PHP technical introduction11.2.2 MySQL introduction31.2.3 Apache introduction41.3 The research status41.4 The purpose of the research and significance51.5 The structure of this paper5Chapter 2 Analysis and Database Design62.1 System function and process analysis62.2 Database design82.2.1 Database requirements analysis82.2.2 Database structure design concept92.2.3 E-R diagram to the relational model of transformation92.2.4 Logical database design122.3 Summary14Chapter 3 Concrete Realization of System Functions153.1 Runtime environment installed153.2 The concrete realization of the main code function193.2.1 User registration193.2.2 User login213.2.3 Scene tour253.2.4 View product253.2.5 Shopping cart283.2.6 Shopping settlement303.3 Summary33Chapter 4 Concrete Realization of System Functions344.1 Running results344.2 Summary41Chapter 5 Summary and Future Works425.1 Thesis summary425.2 Future prospects42References44Acknowledgements45第一章 引言第一章 引言20世纪90年代以来,计算机网络化和经济全球化成为不可抗拒的潮流,Internet已伸展到全世界的每一个角落,信息传递突破了时空限制,应运而生的电子商务则以前所未有之势在全球范围内迅速发展普及1。网络购物中心作为电子商务的一种形式正以其高效、低成本的优势,逐步成为新兴的经营模式和理念,人们已经不再满足于信息的浏览和发布,而是渴望着能够充分享受网络所带来的更加多的便利。网络购物正适应了当今社会快节奏的生活,使顾客足不出户便可以方便快捷轻松地选购自己喜欢的商品,虚拟现实的形式则带给人们一种全新的和现实化的购物体验。1.1系统任务概述本系统旨在完成用户在虚拟现实环境下通过网络完成服装选购与支付的功能。主要任务是建立三维网络服装店模型,并通过数据库动态更新虚拟商店中的商品相关信息,用户登录系统后通过网络与系统交互,完成虚拟服装店漫游、商品选购及支付行为。系统的实现阶段将利用Maya设计三维网络服装店的模型(包括商业街全景设计、商店全景设计和商品设计等),利用Virtools创造友好的用户交互体验(系统漫游、商品展示和用户界面等),利用PHP技术和Dreamweaver工具实现信息动态更新及连接数据库的功能。1.2系统开发技术背景 三维网络服装店是一个综合系统,它集合了三维建模技术、网络通信技术和数据库技术等各个方面,数据库搭建中涉及的关键技术主要有PHP、MySQL和Apache等,下面将一一进行介绍。1.2.1PHP技术介绍PHP(PHP:Hypertext Preprocessor)是一种在电脑上运行的脚本语言,主要用途是在于处理动态网页,也包含了命令行运行接口(command line interface),或者产生图形用户界面(GUI)程序。PHP最早由Rasmus Lerdorf在1995年发明,而现在PHP的标准由PHP Group和开放源代码社区维护。PHP以PHP License作为许可协议,不过因为这个协议限制了PHP名称的使用,所以和开放源代码许可协议GPL不兼容。PHP是一个应用范围很广的语言,特别是在网络程序开发方面。一般来说PHP大多在服务器端运行,通过运行PHP的代码来产生网页提供浏览器读取,此外也可以用来开发命令行脚本程序和用户端的GUI应用程序。PHP可以在许多的不同种的服务器、操作系统、平台上运行,也可以和许多数据库系统结合。使用PHP不需要任何费用,官方组织PHP Group提供了完整的程序源代码,允许用户修改、编译、扩充来使用。PHP有着简单易用和功能强大的特点,这完全要归功于其开放的模块化设计。在基于Zend引擎的支持和优化下,各种各样的扩展模块,其功能已经覆盖几乎所有的Web应用。字符串与数组处理:字符串和数组是所有计算机编程语言中最基本的数据结构。在各种语言中,对这两种数据结构的支持是完善的,PHP也是如此。作为一种面向Web开发的程序语言,PHP也有着自己的独特性。目录与文件的操作:文件系统是操作系统的主要组成部分,是数据存储的基本单元。利用目录和文件函数,PHP可以对本地文件系统进行直接操作,如对文件或目录进行的创建、删除和读取操作,也可以对其所有者权限、组别等信息进行查询和变更操作。当激活了php.ini文件中的“allow_url_fopen”选项后,利用简单的fopen()或fwrite()等函数就可以对远程文件进行操作。例如:程序可以读取或下载远程Web服务器的文件;对于具有适当权限的用户,还可以登录远程FTP服务器进行数据的保存或下载操作,甚至可以使用syslog()函数进行分布式日志的管理和维护。对不同类型文件的支持:PHP不仅仅局限于HTML和文本文件的处理,也可以符合特定格式的文件进行快速处理。例如对于CVS(逗号分隔文件)、INI(Windows配置文件)以及XML文件,PHP中都有专用的解析函数。除了上述文本文件,PHP还提供可以读取 ZIP文件的zlib压缩文件库。PHP能够非常简便的输出文本,如XHTML以及任何其他形式的XML文件。PHP还能动态的输出图像(GD2库)、PDF文件(PDFLib库)甚至Flash动画(LibSWF和Ming库)。在Windows系统中,PHP能够在服务器端开辟出一块动态的缓存空间,从而直接打印这些文件(使用Printer扩展)。简便的数据库操作:PHP最显著的特征之一,是它支持很大范围的数据库系统。用户会发现,利用PHP编写基于数据库支持的动态网页简单得难以置信。对各种协议的支持:通常,用户在编程过程中还会涉及到各种不同接口之间的通信问题,如打开文件并读取,或者建立一个套接字(Socket)连接发送数据。这些过程都是基于各种通信协议完成的。所谓通信协议,实际就是系统间发送和接受数据时所遵循的特定方法。PHP支持诸如FTP、LDAP、IMAP、NNTP、POP3、HTTP、COM(Windows环境)等大量的通信协议。PHP还可以开放原始网络端口,使得任何其他的协议能够协同工作。PHP支持和所有Web开发语言之间的 WDDX复杂数据交换。目前,PHP已经支持了对Java对象的使用,并且可以将它们自由的用作PHP对象。1.2.2MySQL介绍MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司。在2008年1月16号被Sun公司收购。而2009年,SUN又被Oracle收购。对于MySQL的前途,没有任何人抱乐观的态度。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。与其他的大型数据库例如Oracle、DB2、SQL Server等相比,MySQL自有它的不足之处,如规模小、功能有限(MySQL Cluster的功能和效率都相对比较差)等,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。目前Internet上流行的网站构架方式是LAMP(Linux + Apache + MySQL + PHP),即使用Linux作为操作系统,Apache作为Web服务器,MySQL作为数据库,PHP作为服务器端脚本解释器。由于这四个软件都是自由或开放源码软件(FLOSS),因此使用这种方式不用花一分钱就可以建立起一个稳定、免费的网站系统。1.2.3Apache介绍Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,可以在大多数电脑操作系统中运行,由于其跨平台和安全性1被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩充,将PerlPython等解释器编译到服务器中。Apache支持许多特性,大部分通过编译的模块实现。这些特性从服务器端的编程语言支持到身份认证方案。一些通用的语言接口支持Perl,Python,Tcl, 和PHP。流行的认证模块包括mod_access,mod_auth和mod_digest。其他的例子有SSL和TLS支持(mod_ssl),代理服务器(proxy)模块,很有用的URL重写(由mod_rewrite实现),定制日志文件(mod_log_config),以及过滤支持(mod_include和mod_ext_filter)。Apache日志可以通过网页浏览器使用免费的脚本AWStats或Visitors来进行分析。Apache的2.x版本内核在Apache 1.x版本之上作出了重要的加强。这包括:多线程,更好的支持非UNIX平台(例如Windows),新的Apache API,以及IPv6支持。1.3国内外研究现状随着社会的发展,网络的普及,网上购物已成为在线业务的重要载体。B2C能够绕过中介(如批发商、销售商或经销商)建立与客户的直接关系。网站还可以为用户提供商品的详细信息,用户可以在线购买商品,确定自己的订单。同时网站还提供关于商品或电子零售商的选择建议和评级。网上销售为人们提供了更广阔的环境:人们不受时间的限制,不受空间的限制,不受传统购物的诸多限制,可以随时随地在网上交易。更广阔的市场:在网上这个世界将会变得很小,一个商家可以面对全球的消费者,而一个消费者可以在全球的任何一家商家购物。更快速的流通和低廉的价格:电子商务减少了商品流通的中间环节,节省了大量的开支,从而也大大降低了商品流通和交易的成本。更符合时代的要求:如今人们越来越追求时尚、讲究个性,注重购物的环境,网上购物,更能体现个性化的购物过程。目前,大部分的网上购物系统都是采用普通的网页和ASP技术来实现。以三维方式呈现的基于网络的购物系统多数利用VRML技术来实现,而利用Maya、Virtools和PHP来实现的购物系统尚未真正投入使用,或者仍然处于实验阶段。原因在于,第一,三维建模需要复杂的规划和美工设计,维护存在一定的困难;第二,大多数用户所使用的电脑配置并不能很好的体现出三维系统的效果;第三,如何将用Virtools加工过的Maya模型嵌入网页,并使其与数据库交换信息是关键的难点之一,目前并不存在一个可以投入实际使用的解决方案。1.4课题研究的目的与意义本课题将利用Maya完成三维建模,再用Virtools技术完成系统交互功能,然后通过PHP和MySQL完成数据库的搭建工作。整个系统基于网络运行,用户在普通的浏览器上即可以体验到新奇的、有趣的、友好的虚拟购物环境。数据库的搭建工作是一个十分重要的环节,是整个系统成功运作的基础。本课题研究的目的是,如何利用在普通的网页中嵌入三维场景,然后结合PHP技术实现在三维场景中增加、查询和修改数据的功能,从而完成可实际使用的电子商务系统,为改变传统的商业运作模式提供了一种技术上的可行性的方案,为今后进一步研究提供依据。1.5论文的组织结构本论文共分为五章,具体安排如下:第一章:简单概述系统的主要任务,并介绍实现系统数据库搭建需要用到的技术,然后说明了毕业设计的国内外研究现状,提出课题研究的目的和意义。第二章:对系统的主要功能与流程进行分析,接着进行需求分析,完成数据库的逻辑结构设计。第三章:说明了系统软件平台的安装与配置过程,然后详细介绍系统各个功能模块的具体实现过程,给出实现相应功能的核心代码。第四章:用图片的形式展示了系统的测试和运行结果。第五章:最后论文总结了毕业设计所做的工作,提出了课题中的重点难点,并且指明了下一步的改进计划。5第二章 系统分析与数据库设计第二章 系统分析与数据库设计2.1系统功能与流程分析本系统为用户提供一个虚拟的三维购物街场景,已完成注册的用户登录后可以在系统中进行漫游、浏览商品、使用购物车等各种操作。(1)登陆功能:用户需要通过登录才能进入系统。用户打开主页,点击“登录”超链接,进入登录页面。输入已经注册过的用户名和密码,点击“登录”按钮,审核通过后方可登录系统。(2)注册功能:若用户没有账号,则需要进行注册。用户打开主页,点击“注册”超链接,进入注册页面。输入注册的用户名、密码、性别、电子邮件、金额点击“注册”按钮可完成注册,数据库中增加新的用户数据项,注册成功后自动转到登录页面。(3)漫游功能:用户成功登录系统后,可以在普通网页中利用鼠标和键盘漫游虚拟商业街场景,并可以查看当前用户的信息和购物车状态。点击“退出”按钮,则退出系统,回到主页面。(4)浏览商品信息功能:在虚拟商业街场景中漫游时,点击其中的任意商品,用户可以查看所选择商品的详细信息,或者继续漫游并查看其他商品详细信息和进行相关操作。(5)购物车功能:在漫游时用户可以查看当前购物车状态,或者点击其中的任意商品,出现功能按钮组,点击“加入购物车”按钮,即可将所选择的商品加入当前用户的购物车中等待支付,数据库中增加相应的购物信息数据项。(6)支付功能:在虚拟商业街场景中漫游时,点击“我的购物车”按钮,出现购物清单。单击“全部支付”按钮,若当前用户余额大于购物车中商品价格总额,则出现支付成功提示,并显示支付后余额,数据库更新用户余额、库存数据以及购物信息数据;若当前用户余额小于购物车中商品价格总额,则出现支付失败提示,数据库不做任何操作。总结出的系统功能模块划分和系统总体使用流程如图2-1和图2-2所示。图2-1:系统功能模块图图2-2:系统总体使用流程图2.2数据库设计数据库结构设计的好坏直接影响到系统的效率和实现的效果。合理地设计数据库结构可以提高数据查找和存储的效率,保证数据的完整和统一。数据库设计一般包括如下几个步骤:(1)数据库需求分析;(2)数据库概念结构设计;(3)数据库逻辑结构分析。2.2.1数据库需求分析网上购物系统的数据库功能主要体现在对各种信息的提供、保存、更新和查询操作上,包括会员信息、商品信息、库存信息、购物车信息等,各个部分的数据内容又有内在联系。针对该系统的数据特点,可以总结出如下的需求:(1)注册过的用户才可以登录使用系统功能。(2)用户信息包括用户名、密码、性别、电子邮件、账户金额。(3)商品信息包括商品名称、商品价格、描述、库存等。(4)库存信息包括颜色、码数、库存数等。(5)购物信息记录了用户加入购物车的商品信息。(6)通过购物信息可以获知商品的价格、颜色、码数等相关信息。(7)一个商品信息可能对应多个库存信息。(8)一个用户可能对应多个购物信息。经过上述系统功能分析和需求总结,可设计如下的数据项和数据结构:(1)用户信息,包括用户编号、用户名、密码、电子邮件、账户金额等数据项。(2)商品信息,包括商品编号、商品索引名称、商品名称、销售价格、描述等数据项。(3)库存信息,包括库存编号、商品编号、码数、颜色、库存数等数据项。(4)购物信息,包括购物编号、用户编号、商品编号、商品数量等数据项。2.2.2数据库概念结构设计得到上面的数据项和数据结构后,就可以设计满足系统功能需求的各种实体及相互关系,再用实体-关系图,即E-R(Entity-Relationship)图将这些内容表达出来,为后面的逻辑结构设计打下基础。本系统整体的E-R图如图2-3所示。图2-3:系统E-R图建立好概念模型以后需要根据建立逻辑模型,由概念设计到逻辑设计需要遵行转换原则,需要灵活运用。2.2.3 E-R图向关系模型的转换将实体-关系图,即实体、实体的属性和实体之间的联系转化为关系模式。转换原则如下:(1)一个m:n联系转换为一个关系模式关系的属性:与该联系相连的各实体的码以及联系本身的属性。关系的码:各实体码的组合。(2)一个1:n联系两种转换方法转换为一个独立的关系模式。关系的属性:与该联系相连的各实体的码以及联系本身的属性。关系的码:n端实体的码。与n端对应的关系模式合并合并后关系的属性:在n端关系中加入1端关系的码和联系本身的属性。合并后关系的码:不变。这种方法可以减少系统中的关系个数,一般情况下更倾向于采用这种方法。(3)一个1:1联系转换为一个独立的关系模式。关系的属性:与该联系相连的各实体的码以及联系本身的属性。关系的候选码:每个实体的码均是该关系的候选码。与某一端对应的关系模式合并合并后关系的属性:加入对应关系的码和联系本身的属性。合并后关系的码:不变。(4)三个或三个以上实体间的一个多元联系转换为一个关系模式关系的属性:与该多元联系相连的各实体的码以及联系本身的属性。关系的码:各实体码的组合。(5)同一实体集的实体间的联系即自联系,也可按上述1:1、1:n和m:n三种情况分别处理。本系统规划出的实体有:用户信息实体、商品信息实体、库存信息实体和购物信息实体,每个实体都包含各自的属性,系统功能模块的实现正是靠这些实体属性之间的连接来实现的,如通过库存编号,能将商品信息实体和购物信息实体联系起来,从而实现购物车查询功能。它们的E-R图分别如图2-4图2-7所示。图2-4:用户信息实体E-R图图2-5:商品信息实体E-R图图2-6:库存信息实体E-R图图2-7:购买信息实体E-R图2.2.4数据库逻辑结构设计有了数据库概念结构设计,数据库的设计就简单多了。在网上购物系统中,首先要创建网上购物系统数据库,然后在数据库中创建需要的表和字段。如果有需要,还可以设计视图、存储过程以及触发器。下面是三维网络服装店中数据库的设计。在MySQL中要建立4张数据表,分别是用户表、商品表、库存表和购物车信息表,如表2-1表2-4所示。表2-1用户表user列名称描述类型主键(PK)或外键(FK)UserID用户IDIntPKUserName用户的登录名称Varchar(20)Password用户密码Varchar(20)Account用户持有的金额IntSex性别mMalefFemaleChar(1)Email电子邮件地址Varchar(60)表2-2商品表goods列名称描述类型主键(PK)或外键(FK)GoodsID商品IDIntPKGoodsIndex商品索引名称Varchar(45)GoodsName商品名称Varchar(20)Price商品价格IntPS商品描述Varchar(45)表2-3购物信息表shoppingInfo列名称描述类型主键(PK)或外键(FK)ShoppingInfoID购买信息IDIntPKUserID用户IDIntFKGoodsID商品IDIntFKReserveID库存IDIntFKNumber件数IntPaid是否已付款 1是 0否Int表2-4库存表reserve列名称描述类型主键(PK)或外键(FK)ReserveID库存IDIntPKGoodsID商品IDIntFKColor颜色Varchar(10)Size码数Char(1)Number库存数Int2.3本章小结本章先对系统的主要功能与流程进行了分析,将本系统划分成三大功能模块:注册功能模块、模拟场景漫游功能模块和购物功能模块。然后根据系统功能模块的需要,按照数据库设计的一般步骤,先进行需求分析,然后通过实体-关系图表明了系统各个实体之间的关系,完成E-R图向实体关系模型转换的过程。最后根据数据库概念结构设计,创建了四张数据库表,分别为:用户表、商品表、库存表和购物车信息表,并将表中的字段名及其他要求用表格的形式展现出来,为接下来的系统功能具体实现工作做好准备。47第三章 系统功能具体实现第三章 系统功能具体实现3.1系统运行环境安装为了实现系统的任务和目标,首先需要安装好所需的软件平台,并完成相关配置。需要软件版本如下:操作系统:WINDOWS XP Professional SP3编辑软件:Dreamweaver CS3PHP:php-5.3.2-Win32-VC6-x86Apache服务器:httpd-2.2.15-win32-x86-no_sslMySQL数据库:mysql-essential-5.1.43-win32MySQL Administrator:mysql-gui-tools-5.0-r17-win32(1)Apache安装安装说明运行apache安装程序,方法非常简单,弹安装界面后一直点击“next”,接着会出现一个界面,需要填写3个内容,分别为:Network Domain、Server Name、Administrators Email Address 可以随便填写,不影响内容。在下面还有2个选项,默认选择为80端口,第二个为8080端口,根据个人需求选择,一般为默认80端口。继续安装,选择Custom(自定义安装),点击“next”;其中有打着红叉的组件,单击这个组件,选择“This feature, and all subfeatures, will be installed on local hard drive.”,即“此部分,及下属子部分内容,全部安装在本地硬盘上”。点击“next”;然后选择右下角的“change”改变安装路径,安装到“D:Apache2.2”,点击“next”;安装完毕后,电脑右下角会多出一个图标,双击打开,选择start或restart,能正常运行,至此安装完毕。修改配置打开安装录下D:Apache2.2confhttpd.conf文件(修改配置文件时,不建议使用记事本,可能会对其造成影响,推荐使用Notepad+或其他编辑软件打开修改)。打开以后用Ctrl+F查找所要修改的内容:在#LoadModule vhost_alias_module modules/mod_vhost_alias.so下添加如图3-1所示代码:LoadModule php5_module “D:/PHP/php5apache2_2.dll”PHPIniDir “D:/PHP”AddType application/x-httpd-php .phpAddType application/x-httpd-php .htmAddType application/x-httpd-php .html图3-1:在httpd.conf中添加的代码DirectoryIndex index.html修改成如图3-2所示代码:DirectoryIndex index.php default.php index.html index.htm default.html default.htm图3-2:在httpd.conf中修改的代码测试在D:/Apache2.2/htdocs目录下建立个index.html页面,在浏览器中输入http:/localhost/,如果能正常显示,Apache配置完毕,已经正常运行。(2)MySQL安装安装说明打开安装程序,单击“next”,选择custom,组件为默认选择,这里不做改动,点击“next”;路径为D:MySQL,点击“next”;安装好以后点击“finish”;跟着会出现一个配置向导,点击“next”;选择“Detailed Configuration(详细配置)”,点击“next”;这里有3个选项:Developer Machine,将只用尽量少的内存;Server Machine,将使用中等数量内存;Dedicated MySQL Server Machine,这台服务器上面只跑MySQL数据库,将占用全部的内存。可以根据自己需求选择,这里选择第二种“Server Machine”,点击“next”;选择数据库用途,同样有3个选项:Multifunctional Database多功能用途,将把数据库优化成很好的innodb存储类型和高效率的myisam存储类型;Transactional Database Only只用于事务处理类型,最好的优化innodb,但同时也支持myisam;Non-Transactional Databse Only非事务处理类型,适合于简单的应用,只有不支持事务的myisam类型是被支持的。一般选择第一种多功能的,同样这里也是。点击“next”;选择InnodDB的数据存放位置,默认位置即可点击“next”;选择MySQL允许的最大连接数,第一种是最大20个连接并发数,第二种是最大500个并发连接数,最后一种是自定义,自己可以根据需求选择,这里选择第二个,点击“next”;下面是选择数据库监听的端口,一般默认是3306,如果改成其他端口,以后连接数据库的时候都要记住修改的端口,否则不能连接MySQL数据库,比较麻烦,这里不做修改,用MySQL的默认端口:3306,点击“next”;这一步设置MySQL的默认编码,选择第三个,并在Character Set菜单中,选择“gbk”编码,点击“next”;(注:如果要用原来数据库的数据,最好能确定原来数据库用的是什么编码,如果这里设置的编码和原来数据库数据的编码不一致,在使用的时候可能会出现乱码。)这一步决定是否要把MySQL设置成windows的,一般选择设成服务,这样以后就可以通过服务中启动和关闭MySQL数据库。下面的复选框也勾选上,这样,在cmd模式下,不必非到MySQL的bin目录下执行命令。也就是把上下2个勾都打上,中间默认,点击“next”;这一步是设置MySQL的超级用户密码,这个超级用户非常重要,对MySQL拥有全部的权限,请设置好并牢记超级用户的密码,下面有个复选框是选择是否允许远程机器用root用户连接到你的MySQL服务器上面,如果有这个需求,也请勾选。这里使用默认选择,在New root password和Confirm中输入密码。点击“next”。点击“execute”进行配置,稍微等待一会,圆点上的勾全部打上,就代表配置完毕。修改配置打开D: MySQLmy.ini,设置datadir为D:/ MySQL/data/或你所要存放数据位置的目录即可。(3)PHP安装安装说明由于下载的的是ZIP压缩包,只需要将文件解压到“D:PHP”目录下即可。修改配置将D:PHPphp.ini-development文件修改成php.ini;打开php.ini,将; extension_dir = “ext”修改成:extension_dir = “E:WAMPPHPext”;将947行下,这些文件前面的“;”去除,如图3-3所示:extension=php_curl.dllextension=php_gd2.dllextension=php_mbstring.dllextension=php_mysql.dllextension=php_mysqli.dllextension=php_pdo_mysql.dllextension=php_xmlrpc.dll图3-3:将前面的“;”去除的代码将;date.timezone =修改成(很多网站没提到这里要修改,默认为美国时间,如果不修改会报错):date.timezone = Asia/Shanghai。测试重启Apache(修改过配置文件 必须重启Apache才会生效);新建个index.php页面,代码中输入,保存文件放到“D:/Apache2.2/htdocs”目录下;打开浏览器输入:http:/localhost/index.php。如果能正常显示,说明PHP配置完毕,可以查看该页面的PHP信息是否正确。(注:在改文件中输入函数可输出大量的有关PHP当前状态的信息,如PHP版本,服务器信息和环境等。)接着测试下,是否能连接到MySQL。再新建个link.php,代码中输入如图3-4所示代码:图3-4:测试是否能连接到MySQL的代码也保存文件放到“D:/Apache2.2/htdocs”目录下,打开浏览器输入:http:/localhost/link.php查看。(4)结束至此,Windows环境下的PHP环境搭建完毕。3.2功能具体实现与主要代码3.2.1用户注册当需要新增、更新记录时,网页中需要有一个表单且表单元素必须置于表单内,在单击按钮后只有在表单内的元素会被以POST或GET的方式传递。Dreamweaver中的新增、更新记录都是将表单元素的值以POST的方式传递给本身(页面),当程序判断到指定字段(新增记录时字段名为MM_insert,当使用了“插入记录”服务器行为时该字段将被自动添加)送出了POST信息(值为窗体名称),便执行新增、更新记录等部分的程序。在数据表user中有6个字段,其中UserID字段为主键且附加了auto_increment属性,因此在新增记录时不必考虑UserID字段,只需增加5个值即可。完成注册功能的页面为register.php,在改页面含有一个id为register_form的表单。分别选择各个文本字段,并在“属性”面板为其命名,分别是用户名UserName、密码Password、性别Sex、电子邮件Email、账户金额Account,与记录集字段名称相对应。当表单元素的命名与记录集字段相符合时,在做“新增记录”、“更新记录”时Dreamweaver会自动将表单元素与记录集字段相匹配。选择其中一个按钮,在“属性”面板中选择其动作为重设表单。这个按钮可以做到清除表单各元素值的效果。完成后的页面如图3-5所示。图3-5:注册页面设计该功能的主要代码如图3-6所示:if (isset($_POSTMM_insert) & ($_POSTMM_insert = register_form) $insertSQL = sprintf(INSERT INTO user (UserName, Password, Account, Sex, Email) VALUES (%s, %s, %s, %s, %s), GetSQLValueString($_POSTUserName, text), GetSQLValueString($_POSTPassword, text), GetSQLValueString($_POSTAccount, int), GetSQLValueString($_POSTSex, text), GetSQLValueString($_POSTEmail, text);mysql_select_db($database_xmu3dcs, $xmu3dcs);$Result1 = mysql_query($insertSQL, $xmu3dcs) or die(mysql_error();$insertGoTo = login.php;if (isset($_SERVERQUERY_STRING) $insertGoTo .= (strpos($insertGoTo, ?) ? & : ?;$insertGoTo .= $_SERVERQUERY_STRING;header(sprintf(Location: %s, $in

温馨提示

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

评论

0/150

提交评论