资源描述
目 录1引言11.1课题的背景11.2课题意义22相关研究与技术32.1相关研究32.1.1开发现状32.1.2可行性分析32.1.3二手交易的优势42.1.4校园二手交易的特征42.2相关技术62.2.1PHP简介62.2.2Apache简介72.2.3MySQL 简介72.2.4EditPlus简介82.2.5系统环境配置93系统设计113.1网站设计目标113.2系统功能需求分析113.3系统流程图124系统数据库设计134.1数据库需求分析134.2数据库E-R图设计144.3数据库逻辑结构设计165系统的实现195.1系统的主要功能195.1.1用户注册界面195.1.2留言板界面215.1.3发布信息界面225.1.4最新商品显示界面235.1.5商品展示界面235.2网站首页245.3管理员管理主界面256系统测试256.1用户模块测试266.1.1用户登陆的测试266.1.2最新商品显示测试266.2管理员模块测试276.2.1系统用户管理276.2.2网站管理测试277结束语287.1总结287.2系统的展望28致谢30II基于PHP的校园二手交易网站的设计与实现摘 要: 伴随着互联网技术的普及,电子商务已经被人们所熟知,大学生更是对此乐此不疲且津津乐道。针对目前大学生的大量生活学习用品无法物尽其用,而导致的随意丢弃和铺张浪费,更者在校园内私设摊位随意甩卖,致使校园管理不便,破坏校园环境,为了进一步规范校园管理,美化校园环境,从而设计开发了一个校园二手交易的网站,使大家的二手物品有了较好的管理,使大家在网上冲浪的同时能顺便解决自己不需要的二手物品。本文是使用PHP技术和MySQL数据库编写的二手交易网站,用户可以进行注册,登陆和个人资料管理,发布和管理二手商品等一系列操作的一个公共的平台,还提供了管理员后台管理系统的功能。为广大师生提供一个便捷,有效,安全的交易平台。关键词:校园二手;PHP;MySQL;电子商务;Apache1 引言1.1 课题的背景从1946年第一台计算机的诞生开始,我们已经进入到了第三次工业革命,计算机和互联网已经逐渐深入到了各行各业的各个领域,它将一个个家庭,一个个城市,一个个国家都连接到了一起,它为我们带来了一个无国界,零距离的时代。伴随着互联网技术的急速发展,它为我们的日常生活,学习和工作带来了巨大的影响。我们如今已经可以做到足不出户的自由选择购物,学习,交友,聊天等各种社会活动。特别是从中国加入WTO以后,电子商务渐渐被人所熟知,它以一种全新的交易模式,实现了交易的无纸化,效率化,自动化,对我们的生活进行了全方位的改造,对市场,企业,个人,教育以及娱乐等方面改变了人类长期以来形成的交互方式,为我们展示了一个与众不同的世界。作为电子商务的一个分支,二手物品交易更能体现网络交易环保性能的另一个切面。二手交易提倡的是将手中剩余的物资,以一个合理的价钱,转手给有需要的人,这既对环保事业有这重要意义,又对人尽所需有着帮助。而作为学校,能有一个公共的平台来让学生处理自己的二手物品,这对校园环境,校园管理,甚至学生都是一个很重要,很好的帮助。1.2 课题意义 1) 实用,方便学生二手网站上可以提供许多方便学生学习与生活的信息,例如被现代家庭淘汰的7、8成新、价格低廉的电视机,在广大学生中倍受青睐。学生宿舍没有电视机, 为了丰富课余生活, 同舍几位好友可以一起出钱合买一台,请不要小看“电视”,一有球赛之类的开始,就会有许多同学围坐在它的身旁,足以看出电视对大家的“ 吸引力”。在大学生活结束的同时,还可转卖给“师弟师妹”。“旧自行车” 在大学生中也非常抢手,大学校园真的很大,有的还分为好几个校区,每天来回上课、去图书馆看书学习,跑来跑去真的很辛苦,并且有时还要上街购物、出去游玩等这让自行车的需求变多了。买新车,价格很高,还容易被“贼”惦记,还是“二手”的好用。用了二三年,再便宜出手,即便是扔了也不心疼。每当学期开始,很多学生不买新书,而是到网站上搜索同样的二手教材,这在大学生中也十分普遍。如等级考试教程,新书100元左右,而二手书仅20元,况且,在旧书中还会保留着高年级上课的笔记,更加实用有效。网站商品琳琅满目,MP3、U盘、灯、耳机、衣架、篮球、健身器材等,比比皆是。2) 培养学生的经营意识每当临近期末、毕业,书籍之类的都会成为废品,论斤两的卖给废品回收站,而现在,学生可以把这些物品的信息挂在校园二手网站,从而方便学生之间的双向选择,创造一定的经济效益,有的学生还会收集和整理这些信息与物品,尝试进行经营,尝尝做“老板”的滋味。3) 二手网站深受学生青睐高校的二手交易市场是一个大市场,每年都有毕业生与新生,毕业生们不可能将所有的东西都带走,书籍之类的已经成为了累赘,卖掉反而还能赚点钱。新生们的生活费本来也不高,都希望能买到物美价廉的物品,这时,校园二手网站的作用就发挥出来了。卖家可以在网上登记自己出售的物品,买家则可以在网上搜索自己所需要的,若没有,也可以在网上发布求购信息。这一切只需要大家在电脑上点击几下鼠标就可以了,其效率可以说是面对面交易方式的数倍。4) 二手网站交易的安全校园二手网站上进行交易的都是本校学生,他们在注册时都提供了真实的联系方式,且商品的价格质量都可以直接当面确定,不像那些商业网站,买卖双方都存在很大的风险9。2 相关研究与技术2.1 相关研究2.1.1 开发现状目前,国外高校校园电子商务系统已经发展到一定水平,网上购物系统、网上支付系统等均比较完善,为师生、员工提供了极大便利。我国校园电子商务当前还处在较为低级的发展阶段,校园电子商务建设还相对落后。很多学校甚至还没有开始实施,己经开始实施的学校大多数也局限在一定范围内。因此,我国校园电子商务系统建设还有待进一步加强。校园是新事物的快速接收者,而广大在校学生既是电子商务的接受者,又将是未来电子商务发展的推动者。校园电子商务从商业运作模式来看属于一般电子商务, 从根本上说,是C2C模式:绝大多数的卖家和买家都是个人。卖的东西大多也以个数为计量单位,并且大多与学生有关,往年教材、电脑配件、自行车、辅导资料、房屋出租、化妆品等是最常见的商品。作为校园电子商务平台的交易网站也同样不对卖家所售商品的真伪负责。但与像“e-B a y易趣”、“淘宝”等这样纯粹的商业性C2C不同,校园交易网没有自己的支付系统,靠的大多就是卖家和买家的互相见面,然后一手交钱,一手交货,看上去有些“原始”。在校园交易网上购物比较单纯,通常不必太在意卖家或买家的伪善,不用为现金的支付问题而担忧,甚至不用事先就为店面的开张而支付一笔不小的费用(对学生来说),比较适合学生群体10。2.1.2 可行性分析设计一个二手网站,可以从根本上解决二手信息发布困难的弊端,使得校园内的二手信息合理有效的管理,方便广大师生。且基本上只为本校学生使用,所以网站规划不会很大,从经济开发上来说,由于选择的开发软件和数据库都是免费的开源软件,并且是由编写简单的PHP语言和操作方便MySQL数据库构成的,所以从经济开发上来说是可行的。从技术角度上来说,由于是基于PHP的,可以简单的上手学习编写。而在现今,各种开源代码繁多,可以用来学习借鉴,也都可以非常有效的完善开发这样一个网站。同时作为一个电子商务的系统,也有许多成功类似网站的经验可以借鉴,所以从技术的角度来说,也是可行的。从网站运行上来说,由于客户端仅仅需要一个浏览器,用户通过浏览器来登陆系统,而服务器端也只需要一台服务器,服务器要求一个数据库环境和一个网络应用开发的环境,实现起来比较容易,所以从运行上来说是可行的。同时这样一个系统,在系统管理员合法管理和用户的自觉配合下,不会违规进行任何的不法的活动和交易,发布具有危害性和不适宜的信息,也不存在任何非法牟利的行为,在法律上也是可行的。在各种可行性研究保证和基于用户需求要求下,开发系统的方案经过不断论证和假设,确定出了一个最佳方案。2.1.3 二手交易的优势二手物品交易网站的设计最大的优势并不是价格便宜,而是其性价比高,因为二手物品转手的价格不会很高,并且一般需要出售的二手物品都是在身边长久不用,闲置很久的东西,对与卖家来说已经是没有用的东西,所以才想通过网站的途径转卖给更需要的人,所以并不会要价很高,所以价格方面我们并不需要太过担心,我们需要考虑的是商品的新老程度,购置后的实用情况和这件物品的寿命长短。二手交易网站可以说真正的打破了以往电子商务网站的价格壁垒,使想要购买新商品的人觉得价格过高而有点不舍得,二手卖场的东西又会觉得太蹩脚,性价比很低,只有在二手交易网站上可以购买到性价比很高的商品。二手交易网站24小时服务顾客,你在冲浪的同时随时可以浏览,求购和购买二手物品,这样既省时又省力,只需要在家里等着,就可以购到自己心仪的二手物品了,而你所需要付出的仅仅是点击一下你的鼠标,而不需要留连市场,奔东忙西。二手交易网站拥有功能强大的信息查询系统,它就像一个指明灯,直接将你指向你所需要的二手物品面前,解决了你在二手卖场中的尴尬。它一起规模经营,优化管理和全国联网,可以个顾客带来一个物美价廉的二手物品。二手交易网站的魅力主要表现在以下几个方面:l 来源广泛,品种丰富。二手物品的来源,可以从全国各地而来,而且是购置了新的产品来替换了,而由于旧的不是破损的太厉害,丢了可惜;或者在买别的东西的时候,商家赠送的,但是家中已经有了这类物品;或者是朋友送的。总之,二手物品都是还存在着一些的实用时间,存在不同程度的破损的商品,可以适合家用。l 购买方便。游客在网上发辫需要购买的产品后,可以即刻向卖家发出求购信息,然后由网站作为担保,然后卖家发货,买家确认收货,然后网站将钱转给卖家。l 价格便宜。由于二手物品存在破损,毕竟不是新商品,卖家也愿意将一个较低的价格出售给买家。2.1.4 校园二手交易的特征一般的电子商务网站都是面向广大的社会群众,面向一个国家的所有区域,甚至其他国家,而校园电子商务网站依托于整个校园,它仅仅面向的是校园内的校园内的师生,因此二。者在面向的群体上是有很大的区别的。校园内的电子商务不仅拥有普通企业的在电子商务上的数字化,跨时空,公开,透明等一般特征外,还有它自己独有的特征,具体体现在以下的几个方面:l 稳定良好的网络环境。大学是一个十分注重知识传播的地方,因此也特别注重电脑网络的普及,几乎人手一台,甚至学校图书馆也提供相应网络机房,供学生学习使用。而且大部分学校都建有自己内部的局域网来方便学生学习和生活的,并且局域网连接着大部分的校园机构、部门、宿舍等,从而来学习效率,资源共享和优化资源的目的。另外,校园网络也是相对比较便宜的,能顾及到大多数学生的经济能力和需求,从而使校园网发挥出全部功效。l 稳定的消费群体。校园网的消费群体是稳定的学生客户群,他们的消费与其兴趣爱好基本趋于一致,所消费的商品也是比较简单和单一的。但是每年都有新生和老生毕业,每年数千学生的流动都使校园电子商务更加充满生机和活力。并且,大学校园里的消费群体的素质普遍较高,更加容易接受新鲜的事物,特别是学生们的年龄大都在19-25之间,正处于求知欲望旺盛的阶段,于是也会有许多学生愿意且积极主动的接受校园内电子商务这一新事物,这也同时为它奠定了稳定而又广大的群众基础。l 交易方便。校园电子商务虽然是基于网络平台,但是交易的双方都是本校的学生,在网上打成交易的合约后,就可以在学院内直接交易,这样既可以省钱中间费,又可以省去快递钱,这样可以减少学生的经济负担和加强学生之间的交流,同时也推动了校园电子商务的发展。l 良好的信用机制。大多数电子商务发展的重要阻碍之一就是信用体系的不完善,优良的信用是电子商务发展的必要条件和重要基础。电子商务信用主要取决于个人和商家。必须要有良好的监督机制才能减少和避免出现各种信用危机。而在校园的环境下,有在校的学生构成的交易主体,假设一方出现信用问题,那么很快就会被曝光,在校内传播,这样会给交易的双方都造成极大的心里压力,于是大家都会自觉的注意良好的个人信用。l 交易成本低。校园电子商务会大大的减少交易双方的交易成本。由于校园网的费用原来就是比较低的,同时加上虚拟网络发布出售信息只需要注册与登陆即可而不需要其他的费用,相对于电话、信件、与传真等方式,它的通信成本也会降低很多。并且校园内电子商务多是交易双方直接进行交流沟通,并没有中间者的介入,这样交易的环节和人数的参与降低都可以直接的降低相关的交易成本。卖家是在网络上进行宣传和介绍物品,因此并不需要大量的印发,做广告以及人工费等各种费用。校园电子商务实行的是“无纸贸易”这样就可以减少大量的文件处理费用,校园交易实行的是零交易的成本,满足大学生消费的心理特征。l 节约时间,增加可选性。校园电子商务使广大师生足不出户就可以通过网络了解到所需购买物品的具体性能、新老程度,价格和真实的图片。同时,网站上提供了商品种类以及同种类型的商品很多,为广大同学提供了广泛的可选性,这样他们就会更加容易的买到自己心仪的东西。l 由于面向的对象是只是本校的学生,电子商务的交易主体在物理上是相通的,但它与传统意义上的电子商务网站并不相同,可以说是物理世界商务活动的翻版,在大学校园内实现电子商务所需要的信息流、物流、资金流也是比较简单的。特别是物流与资金流,因为学院交易都为本校学生,因此多以直接见面的方式为主。这样就直接降低了物流费用,本文在资金流和物流的方式上建设比较简单,主要建设的重点放在了信息流上面,通过网站详细构造了物品发布和留言板等功能方便信息的传播与分享,是广大师生更加容易找到需要的信息,方便交易。2.2 相关技术2.2.1 PHP简介PHP:是一种服务器端HTML嵌入式脚本描述语言,其特色在于互联网网页上对数据库操作的方便性。图1 PHP 是 webserver最佳的后端延伸界面PHP是能让你生成动态网页的工具之一。PHP网页文件被当作一般HTML网页文件来处理并且在编辑时你可以用编辑HTML的常规方法编写PHP。PHP代表:超文本预处理器(PHP: Hypertext Preprocessor)。PHP是完全免费的,不用花钱,你可以从PHP官方站点(http:/)自由下载。PHP遵守GNU公共许可(GPL),在这一许可下诞生了许多流行的软件诸如Linux和Emacs。你可以不受限制的获得源码,甚至可以从中加进你自己需要的特色。PHP在大多数Unix平台,GUN/Linux和微软Windows平台上均可以运行。怎样在Windows环境的PC机器或Unix机器上安装PHP的资料可以在PHP官方站点上找到。安装过程很简单。PHP 独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。PHP语言的特点:l 支持多种系统平台l 具有自由软件的特性l 版本更新速度快l 容易与现有的网页整合l 具有丰富的功能。从结构化的特性、对象式的设计、数据库处理、网络接口使用、 到安全编码机制等,据胡完整的包括所有网站所需要的功能l 系统移植速度快。少许修改,就可以将整个网站从一个平台移到另一平台2.2.2 Apache简介Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩展,将Perl/Python等解释器编译到服务器中。Apache http server是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上。Apachehttp server是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛用的计算机平台上,世界上很多著名的网站如Amazon、Yahoo!、W3 Consortium、Financial Times等都是Apache的产物,它的成功之处主要在于它的源代码开放、有一支开放的开发队伍、支持跨平台的应用(可以运行在几乎所有的Unix、Windows、Linux系统平台上)以及它的可移植性等方面。Apache web服务器软件拥有以下特性:l 支持通用网关接口l 支持基于IP和基于域名的虚拟主机l 支持多种方式的HTTP认证l 集成Perl处理模块l 集成代理服务器模块l 支持实时监视服务器状态和定制服务器日志l 支持服务器端包含指令(SSI)l 支持安全Socket层(SSL)l 提供用户会话过程的跟踪l 支持FastCGIl 通过第三方模块可以支持Java Servlets2.2.3 MySQL 简介MySQL是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MySQL AB公司。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL的SQL语言是用于访问数据库的最常用标准化语言。MySQL软件采用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。由于其社区版的性能卓越,搭配PHP和Apache可组成良好的开发环境。与其他的大型数据库例如Oracle、DB2、SQL Server等相比,MySQL自有它的不足之处,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。目前Internet上流行的网站构架方式是LAMP(Linux+Apache+MySQL+PHP/Perl/Python)和LNMP(Linux+Nginx+MySQL+php/perl/Python),即使用Linux作为操作系统,Apache和Nginx作为Web服务器,MySQL作为数据库,PHP/Perl/Python作为服务器端脚本解释器。由于这四个软件都是免费或开放源码软件(FLOSS),因此使用这种方式不用花一分钱(除开人工成本)就可以建立起一个稳定、免费的网站系统。它有以下特点:l 使用C和C+编写,并使用了多种编译器进行测试,保证源代码的可移植性l 支持AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris、Windows等多种操作系统l 为多种编程语言提供了API。这些编程语言包括C、C+、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。l 支持多线程,充分利用CPU资源l 优化的SQL查询算法,有效地提高查询速度l 既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中。l 提供多语言支持,常见的编码如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名。l 提供TCP/IP、ODBC和JDBC等多种数据库连接途径。l 提供用于管理、检查、优化数据库操作的管理工具。l 支持大型的数据库。可以处理拥有上千万条记录的大型数据库。l 支持多种存储引擎。2.2.4 EditPlus简介EditPlus(文字编辑器)汉化版一套功能强大,可取代记事本的文字编辑器,EditPlus拥有无限制的撤消与重做、英文拼字检查、自动换行、列数标记、搜寻取代、同时编辑多文件、全屏幕浏览功能。而它还有一个好用的功能,就是它有监视剪贴板的功能,能够同步于剪贴板自动将文字粘贴进 EditPlus 的编辑窗口中,让你省去粘贴的步骤。另外它也是一个非常好用的HTML编辑器,它除了支持颜色标记、HTML 标记,同时支持C、C+、Perl、Java,另外,它还内建完整的HTML & CSS1 指令功能,对于习惯用记事本编辑网页的朋友,它可帮你节省一半以上的网页制作时间,若你有安装IE3.0 以上版本,它还会结合IE浏览器于 EditPlus 窗口中,让你可以直接预览编辑好的网页(若没安装IE,也可指定浏览器路径)。因此,它是一个相当棒又多用途多状态的编辑软件。EditPlus的主要特点:l 默认支持HTML、CSS、PHP、ASP、Perl、C/C+、Java、JavaScript和VBScript等语法高亮显示,通过定制语法文件,可以扩展到其他程序语言,在官方网站上可以下载(大部分语言都支持)。l EditPlus提供了与Internet的无缝连接,可以在EditPlus的工作区域中打开Intelnet浏览窗口。l 提供了多工作窗口。不用切换到桌面,便可在工作区域中打开多个文档。l 正确地配置Java的编译器“Javac”以及解释器“Java”后,使用EditPlus的菜单可以直接编译执行Java程序。总之,EditPlus功能强大,界面简洁美观,且启动速度快;中文支持比较好;支持语法高亮;支持代码折叠;支持代码自动完成(但其功能比较弱),不支持 代码提示功能;配置功能强大,且比较容易,扩展也比较强。像PHP、Java程序等的开发环境,只要看一下资料,几分钟就可以搞定配置,很适合初学者学习 使用。有不错的项目工程管理功能。内置浏览器功能,这一点对于网页开发者来说很是方便。2.2.5 系统环境配置由于PHP+ Apache+ MySQL的安装相对来说比较简单,这里就省略安装步骤,主要说一下运行环境的配置:1)将php.ini-development文件重命名为:php.ini接着打开此文件找到On Windows 和extension_dir=”ext”修改为:On Windows 和extension_dir=” D:Program Files (x86)PHPext”表示指定PHP扩展包具体目录,以便调用相应的dll文件2)由于PHP默认不支持自动连接Mysql数据库,需要开启相应的扩展功能把;extension=php_curl.dll;extension=php_gd2.dll;extension=php_mbstring.dll;extension=php_mysql.dll;extension=php_pdo_mysql.dll;extension=php_pdo_odbc.dll;extension=php_xmlrpc.dll这些extension之前的;号全部去掉。3)配置PHP的session功能:使用session功能时,我们必须配置session文件在服务器上的保存目录,否则无法使用session,我们需要在Windows7上面新建一个可读写的目录文件夹,此目录最好独立于WEB主程序之外,此处我在D盘建立了phpsessiontmp目录然后在php.ini中找到Session.save_path=”/tmp” 修改为 Session.save_path=” D:phpsessiontem”4)还需要配置一下PHP上传功能同session一样,在使用PHP文件上传功能时,我们必须要制定一个临时文件夹以完成文件上传功能,否则文件上传功能会失败,我们还是建立一个upload_tem文件夹,在php.ini中找到;upload_tmp_dir= 修改为Upload_tmp_dir=”Dupload_tem”5)最后修改一下date.timezone否则在执行phpinfo时date部分会报错;我们需要将;date.timezone=修改为date.timezone=Asia/Shanghai以上php的环境配置就算完成了,我们还需要配置Apache支持PhP,所以还需要对Apache进行配置。配置Apache 以支持PHP6)在D:Program Files (x86)Apache Software FoundationApache2.2conf 下的httpd.conf中在#LoadModule vhost_alias_module modules/mod_vhost_alias.so下添加LoadModule php5_module D:/Program Files (x86)/PHP/php5apache2_2.dllPHPIniDir D:/Program Files (x86)/PHPAddType application/x-httpd-php .php .html .htm7)我们应该制定默认Apache服务器执行WEB主程序的目录为Apache2.2/htdocs,所以你的WEB主程序目录变更时,我们需要修改相应的Apache配置,即将:DocumentRootD:/ProgramFiles(x86)/ApacheSoftware Foundation/Apache2.2/htdocs修改为:DocumentRoot D:workspaces修改为8)最后修改具体的index文件的选后顺序,由于配置了PHP功能当然要先执行index.php将DirectoryIndex index.html 修改为:DirectoryIndex indext.php index.html9)重启Apache服务器至此,在Apache服务器上PHP环境配置工作就完成了,你只需要在D:/workspaces目录下新建一个PHP文件写入然后再浏览器中输入http:/localhost就可以看到具体配置页面了,至此php配置工作就完成了11。3 系统设计3.1 网站设计目标本网站主要实现对二手交易信息的发布与管理,通过本网站可以是校园二手物品交易更加方便简单,方便用户对二手物品进行操作,提高对二手物品的处理力。主要实现如下功能目标:l 登录:系统用户、系统管理员、超级管理员是该网站的目标用户,只有他们拥有登录本网站的权力。l 二手物品信息:主要包括对二手物品进行信息发布,信息管理,信息删除和信息查询的操作,在操作过程中会根据用户权限判断操作范围。l 留言板系统:主要是用户对商品进行发布,求购,交换等操作,用户可以进行留言和回复功能。l 系统用户信息:本功能主要针对系统管理员,包括对系统用户的增加,删除和修改,在操作过程中会根据用户权限判断操作范围,主要包括对用户权限的操作。3.2 系统功能需求分析本文根据网上的二手交易功能分析,将系统分为管理员、用户两个模块。管理员模块包括:系统用户管理、个人资料管理、站内新闻管理、商品信息管理、留言管理、评价记录管理、系统参数管理。用户模块包括:安全登录、查询信息、发布信息、会员注册、物品类别选择、物品信息管理、会员信息修改。刚进入网站的游客能够在网站浏览和搜索信息,不仅能浏览全部的二手信息还能浏览到最新上架的物品信息。通过注册成为会员便能发布二手信息。根据系统功能需求建立的模块关系图如下图:图2 系统模块关系图3.3 系统流程图为了更加清晰的表达系统的功能模块,下面给出了相应发布二手信息的流程图。对于不同的对象,其所执行的拥有的功能也有所不同,流程图也不一样,包括针对校园二手交易网站系统用户与系统管理员的流程图。下面分别是系统用户和系统管理员的流程图。图3 系统用户流程图图4 系统管理员流程图4 系统数据库设计4.1 数据库需求分析创建校园二手交易网站数据库第一步是制定计划,该计划可以在实施数据库时做向导,也可以在数据库实现完成后,用做 数据库的功能说明。数据库的复杂性和细节有数据库的应用程序的复杂性,大小及用户实用情况确定。本文的数据库是一个相对简单的数据库,其基本步骤如图所示。图5 数据库设计的基本步骤4.2 数据库E-R图设计E-R方法是“实体-联系方法”(Entity-Relationship Approach)的简称。它是描述现实世界概念结构模型的有效方法。是表示概念模型的一种方式,用矩形表示实体型,矩形框内写明实体名;用椭圆表示实体的属性,并用无向边将其与相应的实体型连接起来;用菱形表示实体型之间的联系,在菱形框内写明联系名,并用无向边分别与有关实体型连接起来,同时在无向边旁标上联系的类型(1:1,1:n或m:n)。E-R模型中包含“实体”、“联系”和“属性”。根据以上对系统所做的需求分析和系统设计,规划出本文使用的数据库的实体分别为用户实体、二手信息实体、留言板实体、管理员实体。以下图示数据库实体的E-R图:1)用户信息实体用户信息实体包括邮箱、照片、电话、学校、备注、QQ号、注册时间、账号、密码,用户信息实体E-R图如下图所示:图6用户信息实体E-R图2)二手物品信息实体二手物品信息实体包括物品名称、发表时间、物品编号、价格、用户账号、物品介绍、浏览次数、类别,二手物品信息实体E-R图如下图所示:图7 二手物品信息实体E-R图3)留言板信息实体留言板实体包括用户账号、编号、标题、发表时间、回复、内容,留言板信息实体E-R图如下图所示:图8 留言板实体E-R图4)管理员信息实体管理员信息实体包括账号、权限标志、密码,管理员信息实体E-R图如下图所示:图9 管理员实体E-R图4.3 数据库逻辑结构设计本文中,一共需要创建7个数据表。这7个数据表中存放了建设校园二手交易网站所需要的数据。其中表Login是用来存放管理员和会员的登录日志,表Category是用来存放商品类别的信息,表Comment是用来存放用户对物品信息进行的评价,表News是用来存放网站的新闻,表Users是用来存放用户的个人信息,表Goods是用来存放已发布的物品的信息,表Administrator是用来存储管理员的信息。表1 数据库表序号数据库表名数据库存储的内容1Login存储登录日志2Category存储信息的类别3Comment存储物品的评论4News存储网站新闻5Users存储相关会员信息6Goods存储物品发布信息7Administrator存储管理员的状态信息数据关系图如下(PK为主键):图10 数据表关系图数据库表的详细设计如下:用户信息表(Users)中包含了用户账号,用户密码,找回密码提问,移动电话,座机,所在学校,电子邮箱,注册时间,QQ,标志的等键,其中用户账号为主键,相关图如下:表2 用户信息表(User)字段类型Null默认备注user_accountVarchar(30)否主键用户账号user_passwordVarchar(30)否用户密码user_datedatetime否注册时间user_qqInt(11)否QQ号user_markVarchar(80)否0备注user_schoolVarchar(60)否所在学校user_mphoneVarchar(30)否联系电话user_photoVarchar(30)否个人照片user_emailVarchar(30)否电子邮箱类别信息表(Category)中包含了类别名称,大类中小类,小类中大类等键,其中类别名称是主键,相关表如下:表3 类别信息表(Category) 字段类型Null默认备注categoryvarchar(20)否主键类别名称category_orderint(11)否0大类中的小类category_cidint(11)否0小类中的大类登录日志信息表(Login)中包含了登录名,登录IP,登录时间,登录状态,判断是否管理员等键,其中登录名为主键,相关表如下:表4 会员与管理员登录日志信息表(Login)字段类型Null默认备注user_accountvarchar(20)否主键用户账号login_ipvarchar(20)否登录IPlogin_timedatetime否登录时间login_stateint(11)否0登录状态login_judgeint(11)否0判断是否管理员评论信息表(Comment)中包含了ID,物品ID,会员名,内容,时间等键,其中ID为主键,相关表如下:表5 评论信息表(Comment)字段类型Null默认备注comment_idint(11)否主键IDcomment_widint(11)否物品IDuser_accountvarchar(20)否用户账号comment_contentvarchar(400)否评论内容comment_timedatetime否评论时间网站新闻信息表(News)中包含了设置新闻编号,设置新闻标题,设置新闻类别,新闻来源,浏览次数,新闻内容,设置添加时间,设置是否过期,发表新闻的管理员账号等键,其中设置新闻编号为主键,相关表如下:表6 网站新闻信息表(News)字段类型Null默认备注news_idtinyint(10)否设置新闻编号news_titlevarchar(100)否设置新闻标题news_classvarchar(20)否设置新闻类别news_sourcevarchar(30)否0新闻来源news_frequencyint(11)否浏览次数news_contenttext否新闻内容news_timedatetime否设置添加时间news_expiredchar(2)否1设置是否过期user_accountvarchar(20)否主键用户账号物品信息表(Goods)中包含了物品ID,所属大类别,所属小类别,浏览次数,物品介绍,用户账号,发表时间,交易状态,物品名称等键,其中物品ID为主键,相关表如下:表7 物品信息表(Goods)字段类型Null默认备注goods_namevarchar(40)否物品名称goods_dnamevarchar(100)否类别goods_frequencyint(11)否浏览次数goods_introductionvarchar(300)否0物品介绍user_accountvarchar(20)否主键用户账号goods_idint(11)否物品价格goods_timedatetime否物品编号goods_priceint(11)否1发表时间管理员信息表(Administrator)中包含了管理员账号,管理员密码,管理员权限标志等键,其中管理员账号为主键,相关表如下:表8 管理员信息表(Administrator)字段类型Null默认备注admin_accountvarchar(30)否主键管理员账号admin_passwordvarchar(20)否管理员密码admin_markint(11)否管理员权限标志5 系统的实现5.1 系统的主要功能归纳起来,本文的主要功能有以下几点:用户注册,留言板,发布信息,最新产品显示,浏览二手商品界面等,对于网站的建设参照了其他二手交易网站,适当的加入了新闻功能,网站公告等等,在网站的后台还有管理员登陆,管理模块。5.1.1 用户注册界面为了使用户方便安全的浏览网站、发布信息,所以需要用户填写自己的个人信息。游客可以通过注册来成为用户,从来享受到更高的权限,例如对留言板的发言,二手商品的发布,商品的评价等等,这些都需要通过注册来完成。样式如下图:图11 用户注册窗口部分代码展示:?php session_start();include_once conn.php;$ndate =date(Y-m-d);$addnew=$_POSTaddnew;if ($addnew=1 )$xuehao=$_POSTxuehao;$xingming=$_POSTxingming;$mima=$_POSTmima;$shenfenzheng=$_POSTshenfenzheng;$xuexiao=$_POSTxuexiao;$dianhua=$_POSTdianhua;$youxiang=$_POSTyouxiang;$zhaopian=$_POSTzhaopian;$xingbie=$_POSTxingbie;$beizhu=$_POSTbeizhu;$sql=insert into yonghuzhuce(xuehao,xingming,mima,shenfenzheng,xuexiao,dianhua,youxiang,zhaopian,xingbie,beizhu) values($xuehao,$xingming,$mima,$shenfenzheng,$xuexiao,$dianhua,$youxiang,$zhaopian,$xingbie,$beizhu) ;mysql_query($sql);echo javascript:alert(注册成功!请待管理员审核后方可登陆!);location.href=index.php;?5.1.2 留言板界面为了让用户简单有效的发布求购信息,或者对网站相关内容进行评价,以及对某些事物的一些感慨而设计了一个留言板系统,用户在登陆成功后可以选择在线留言留言,发表成功后将会显示发表时间,发表人的姓名等相内容,其他用户也可以选择对其内容进行回复等等动作。在留言板中留言可以发布相关的求购信息,出售信息或者是物物交换信息,我们可以选择自己感兴趣的内容回复。相关样式图如下:图12 留言板窗口部分代码展示:?phpsession_start();if($_SESSIONusername=)echo javascript:alert(对不起,请您先登陆!);location.href=index.php;exit;include_once conn.php;$id=$_GETid;$addnew=$_POSTaddnew;if ($addnew=1 )$zhanghao=$_POSTzhanghao;$zhaopian=$_POSTzhaopian;$xingming=$_POSTxingming;$liuyan=$_POSTliuyan;$sql=insert into liuyanban(zhanghao,zhaopian,xingming,liuyan) values($zhanghao,$zhaopian,$xingming,$liuyan) ;mysql_query($sql);echo javascript:alert(留言成功!);location.href=lyblist.php;?校园二手信息网站function check()if(document.form1.zhanghao.value=)alert(请输入账号);document.form1.zhanghao.focus();return false;if(document.form1.xingming.value=)alert(请输入姓名);document.form1.xingming.focus();return false;if(document.form1.liuyan.value=)alert(请输入留言);document.form1.liuyan.focus();return false;function gow()location.href=peixunccccailiao_add.php?jihuabifffanhao=+document.form1.jihuabifffanhao.value; 留言板 查看已有留言
展开阅读全文