校园二手信息网站的设计与开发
摘 要
二手信息网站,为二手物品交易提供了网上平台。如今,随着电子商务的不断发展完善,大学校园也需要一个能为学生提供二手物品交易的专用网站,以便发布各种商品信息。
本设计具有一般电子商务的功能,且体现出校园风格。该系统提供的功能包括注册、查询信息、发布信息、找回密码等。本系统的特点在于应用了PHP技术。它是一种简单的动态脚本语言,具有开放源码、执行速度快的特点。该技术还支持广泛的数据库连接 ,具有大量的扩展库,安全性能高,易学易用。
本文首先介绍了该系统的可行性和应用工具,并就系统的需求性和PHP的优势进行了阐述;接着进行系统分析,并设计了本系统所用到的基于MY SQL数据库的数据表结构;然后对该系统各功能模块进行了详细设计;最后,针对系统在代码优化和加密方面的不足做出总结。
关键词:二手信息;PHP;MySQL;APACHE;MD5;SESSION
Design and Development of Campus Second-hand Information Website
Abstract
Second-hand information website provides a second-hand goods transactions online platform. Now, with the continuous development of e-commerce perfect, University campus also needs an able to provide our students with the second-hand goods transactions dedicated web site, in order to disseminate information of various commodities.
E-commerce’s general function can find in this design, and reflects the style of the campus. Functions include user registration, information inquiry, disseminate information and retrieve passwords in the system. The system has a major characteristic of PHP applications which is a simple dynamic scripting language that is open source, faster implementation characteristics. And it supports a wide range of database connections, with a lot of extensions, security is also very high performance, easy to learn and use.
This paper introduces the feasibility of the system and application tools, described the needs of the system and the advantages of PHP, then the systems analysis, design and MY SQL-based database system used in the data table structure, Then the function of the system modules and the detailed design and code is a major achievement. Description and testing of the system encountered a character coding using the database errors; by setting MYSQL and linking coding solve this error. Finally, summarize the system of encryption and code optimization for the shortage.
Key words: Second-Hand Information; PHP; MySQL; APACHE; MD5; SESSION
目 录
论文总页数:27页
随着Internet 爆炸式的发展,中国自加入WTO以来,电子商务在国内也迅速的发展了起来,现在互联网上各种电子商务网站更是迅速的增长。还在校园的我也深受其中的影响,开发一个对在校学生适用的网站,希望能给大家提供方便的服务。
作为一个大学生,深有体会,从身上的衣服到大家所用的书籍、文具以至各种生活常用品,用上一段时间就会被淘汰,有的同学干脆扔掉,很是浪费还污染了环境。也有的同学想到卖掉,苦于难寻买家,将其卖给收费品的。这样就造成了物不能尽其用。
为了解决这种资源的浪费,所以开发了校园二手信息网站,借助于低交易成本的Internet。为大家提供一个低成本、快速迅捷的信息发布平台。新系统开发过程中严格按照系统开发步骤进行,在系统调研、分析、设计到系统的实施的全过程中,力求其科学性和合理性。
可行性分析的任务是从技术上、经济上、社会上、法律上分析需要解决的问题是否存在可行的解。
该系统采用BS模式设计,在高校的校园网上运行。学生可以通过接入校园网的计算机,访问二手信息网站。本系统是一个比较普通的BS模式的信息发布系统,在技术上具有可行性。
现在,计算机的价格已经十分低廉,性能却有了长足的进步。而本系统的开发,为大家节约了大量的资源,为此主要表现有以下几个方面:
所以,本系统在经济上是可行的。
系统为一个小型的信息管理系统,所耗费的资源非常的小,一般的电脑无论是硬件还是软件都能够满足条件,因此,本系统在运行上是可行的。
系统纯为私人设计,在开发过程中没有涉及合同、责任等与法律相抵触的方面。因此,本系统在法律上是可行的。
PHP是一种简单的、面向对象的、解释型的、安全的、性能非常之高的、独立于架构的、可移植的、动态的脚本语言。PHP具有和Java类似的Class关键字。因为不需要虚拟机,以致速度比Java快5倍。PHP正迅速变成一种标准的、多用途的、面向对象的脚本语言。PHP不仅可用来开发Web应用程序,也可以开发普通应用程序。
PHP是Hypertex tPre-Processor(超文本预处理器)的缩写,它是一种服务器端的HTML脚本编程语言。PHP语法上与C相似,可运行在Apache, Netscape/iPlanet,和Microsoft IIS Web服务器上。PHP作为一种工具,可以让你创建动态的Web页面。应用PHP的网页与常规的HTML页面并无二致,你可以用同样的方式来创建、编辑它们。PHP允许你直接在HTML文件里写入简单的脚本,这一点与JavaScript非常相似。而不同的是,PHP不依赖于浏览器,是服务器端的语言,而JavaScript却是一种客户端的嵌在HTML中的语言。概念上,PHP与Netscape的LiveWirePro产品,Microsoft的ASP以及Sun Microsystem的JSP相似。
1. PHP的强劲之处在于:
PHP是一项最优秀的技术。其它技术,如PERL,Python,VB Script,ASP相对来说,都是陈旧低劣的。即使是Java/JSP,也在PHP之下。其特点如下:
PHP是最好的,因为它面向对象,并且吸收了C/C++/Java/PERL的精华。PHP可以替代PERL,Python,Java,C,C++,AWK,Unix Shell脚本,Visual Basic和其它语言。PHP直接运行,而且是由C写成的。PHP可以运行在Apache,Microsoft IIS等多种Web服务器上。PHP太容易使用了,你可以用它在非常短的时间里,非常迅速的开发出非常复杂的Web。
PHP最大的优势在于PHP自身完全是由C语言写成的,因此可广泛运行于各种平台之上,如BeOS,UNIX,MS Windows,Apple Macintosh,IBMOS/2以及其它更多的操作系统。而Windows下开发的PHP代码也可以不经过任何改变,就用于UNIX/Linux上。
2. PHP网页执行流程
PHP与传统网页不同,一般的HTML网页在加载时,会直接将网页全部传到使用者的计算机中,然而在使用者的计算机上执行程序,展示内容;PHP则是刚好相反,它主要的用途是在网站服务器端的网页开发,程序员可以通过程序的控制,让网站与访问者交互,进而设计出迷人的动态网页。例如:会员登录、资料认证网页等。如下图:
图1 PHP网页执行流程
1、下载PHP安装程序 http://www.php.net/downloads.php最新版的为PHP5.1 ,Windows的PHP安装分为两种方式,一种是源代码安装方式,一种是EXE安装方式,双击即可安装。本文主要说一下源代码安装过程。
下载“PHP-5.0.3-Win32.rar”。然后解压缩下载到的 RAR文件到c:\php
2、复制 c:\php\php5ts.dll 到 c:\windows\system32。(有时候为了方便,在PHP文件夹中点击搜索*.dll把搜索到的所有文件夹都复制到system32中也可以)复制 c:\php\php.ini-recommended(或者是php.ini-dist)为 c:\windows\php.ini然后打开 c:\windows\php.ini修改如下几个地方:
如果是在生产服务器上,可以不用修改下面这两行
error_reporting=E_ALL & ~E_NOTICE
display_errors = On(这里是修改PHP的错误提示,OFF为不提示,有些数据库链接非错误信息也会被PHP当做错误信息输出,建议用作Web服务器的关闭!)
指示 PHP 扩展库所在文件夹。
extension_dir="c:\php\ext
以下两个是超时时间:一般是60-120。
max_execution_time=90
max_input_time=90
post_max_size=8M(6-10M最佳)
upload_max_filesize=8M(上传附件大小最大)
default_socket_timeout=90(端口时间60-120)
session.gc_maxlifetime=3600(session默认存活时间,秒)
session.save_path="c:\php\sessiondata"(Session的存储目录)
extension=php_mysql.dll(支持MySQL数据库)
extension=php_gd2.dll(支持生成真彩图片)
3. 验证安装
用记事本写几行代码:
<?
phpinfo();
?>
保存为网站根目录下为phpinfo.php文件。然后启动浏览器,访问http://localhost/phpinfo.php,如果看到如下画面就证明PHP安装成功了!
图2 PHP信息页面
MySQL是一个广受Linux社区人们喜爱的半商业的数据库。MySQL是可运行在大多数的Linux平台(i386,Sparc,etc),以及少许非Linux甚至非Unix平台。
1、安装
可以在MySQL站点上获得大多数主要的软件包格式(RPM、DBE、TGZ、RAR)。RAR格式的安装没有多大麻烦,并且无需初始配置;直接解压缩运行安装文件即可进行安装。MySQL的守护进程(mysqld)消耗很少的内存并在只有在执行真正的查询时才装载到处理器上,这意味着对小型数据库来说,MySQL可以相当轻松地使用而不会对其他系统功能有太大的影响。
2、数据类型
字段支持大量数据类型是件好事。通常的整数、浮点数、字符串和数字均以多种长度表示,并支持变长的BLOB(Binary Large Object)类型。对整数字段由自动增量选项,日期时间字段也能很好的表示。
3、SQL兼容性
它也缺乏一些常用的SQL功能,没有子选择(在查询中的查询)。视图(View)也没了。当然大多数子查询可以用简单的连接子句重写,但有时用两个嵌套的查询思考问题比一个大连接容易。同样,视图仅仅为程序员隐蔽where子句,但这正是程序员们期望的另一种便利。
4、存储过程和触发器
MySQL没有一种存储过程(Stored Procedure)语言,这是对习惯于企业级数据库的程序员的最大限制。多语句SQL命令必须通过客户方代码来协调,这种情形是借助于相当健全的查询语言和赋予客户端锁定和解锁表的能力,这样才允许的多语句运行。
5、参考完整性
MySQL的主要的缺陷之一是缺乏标准的RI机制;然而,MySQL的创造者也不是对其用户的愿望置若罔闻,并且提供了一些解决办法。其中之一是支持唯一索引。Rule限制的缺乏(在给定字段域上的一种固定的范围限制)通过大量的数据类型来补偿。不简单地提供检查约束(一个字段相对于同一行的另一个字段的之值的限制)、外部关键字和经常与RI相关的“级联删除”功能。有趣的是,当不支持这些功能时,SQL分析器容忍这些语句的句法。这样做目的是易于移植数据库到MySQL中。这是一个很好的尝试,并且它确实未来支持该功能留下方便之门;然而,那些没有仔细阅读文档的人可能误以为这些功能实际上是存在的。
6、安全性
自始至终我对MySQL最大的抱怨是其安全系统,它唯一的缺点是复杂而非标准,另外只有到调用mysqladmin来重读用户权限时才发生改变。通常的SQL GRANT/REVOKE语句到最近的版本才被支持