当前位置: 首页 > 毕业资源下载

静态网页设计与制作作业成品

基于PHP的校园二手信息网站的设计与开发(源代码+论文)免费下载

 摘要:

二手信息网站,为二手物品交易提供了网上平台。如今,随着电子商务的不断发展完善,大学校园也需要一个能为学生提供二手物品交易的专用网站,以便发布各种商品信息。
本设计具有一般电子商务的功能,且体现出校园风格。该系统提供的功能包括注册、查询信息、发布信息、找回密码等。本系统的特点在于应用了PHP技术。它是一种简单的动态脚本语言,具有开放源码、执行速度快的特点。该技术还支持广泛的数据库连接 ,具有大量的扩展库,安全性能高,易学易用。
本文首先介绍了该系统的可行性和应用工具,并就系统的需求性和PHP的优势进行了阐述;接着进行系统分析,并设计了本系统所用到的基于MY SQL数据库的数据表结构;然后对该系统各功能模块进行了详细设计;最后,针对系统在代码优化和加密方面的不足做出总结。


关键字:

二手信息;PHPMySQLAPACHEMD5SESSION


     目录:

屏幕截图 2020-12-17 101419.png

屏幕截图 2020-12-17 101448.png


  系统分析与数据库分析:

1.1 系统功能需求分析

根据一般电子商务系统功能分析,将系统分为管理员、用户两大模块。系统管理员模块包括:系统配置管理、会员信息管理、网站新闻管理、物品信息管理、管理员管理、登录日志管理。用户模块包括:安全登录、找回密码、查询信息、发布信息、会员注册、物品类别、物品信息管理、会员信息修改。刚进入网站的非会员能够在此网站浏览和搜索信息,不仅能浏览二手信息还能浏览到热门信息。经过注册成为会员便能发布信息。此系统还考虑到用户利用穷举法破解密码,专门设置了用户和管理员登录日志,以便及时了解和防范。

1.2 系统模块关系图

根据系统功能需求建立的模块关系图如下图:

图片1.png 

3  系统模块关系图

1.3 系统E-R图

本实例根据上面的模块关系图规划出的实体有管理员、二手信息机及新闻、用户、会员实体、各实体的E-R图及其关系描述如下(带下划线的为主键):

 

图片2.png

4   会员实体E-R
 

图片3.png

5   二手信息实体E-R
 图片16.png
6   新闻实体E-R

图片17.png

7    管理员实体E-R
超级管理远实体E-R图同管理员实体E-R图类似,无权限属性(省略)
各实体的关系E-R图描述如下: 

图片18.png

实体和实体之间的关系E-R

1.4 数据库设计

1.4.1 数据库表之间的关系

1    数据库表

序号
数据库表
数据库存储内容
1
ershou_adminstage
存储管理员和会员的登录日志
2
ershou_class
存储二手信息的类别信息
3
ershou_pinglun
存储会员对物品信息的评论
4
ershou_news
存储新闻
5
ershou_user
存储会员的相关信息
6
ershou_wupin
存储以发布的物品信息
7
ershou_manager
存储管理员的信息

数据表关系图如下:

图片19.png


9  数据表关系图
1.4.2 数据表结构的详细设计
 
2   用户资料表(ershou_user

序号
字段名
字段类别
说明
备注
1
user_name
varchar(20)
用户的账号名称
主键
2
user _pass
varchar(20)
用户的帐号密码

3
user _question
varchar(50)
找回密码提问

4
user _angser
varchar(50)
找回密码答案

5
user _mphone
varchar(12)
移动电话

6
user _phone
varchar(12)
座机

7
user _school
varchar(60)
所在学校

8
user _email
Varchar(80)
电子邮箱

9
user _date
datetime
注册时间

10
user _qq
Int
QQ

11
user _kt
Int
标志
默认为0

3   类别信息表(ershou_class

序号
字段名
字段类别
说明
备注
1
class_name
varchar(20)
类别名称
主键
2
class_order
int
大类顺序标记小类为默认的0
默认值为0
3
class_cid
int
小类顺序标记大类为默认的0
默认值为0

4   用户与管理员登录日志信息表(ershou_ adminstage

序号
字段名
字段类别
说明
备注
1
manager_name
varchar(20)
登录名
主键
2
manager_action
varchar(50)
登录动作

3
manager_ip
varchar(30)
登录ip

4
manager_time
datetime
登录时间

5
manager_state
int
登录状态
默认为0
6
manager_if
Int
判断为管理员还是用户
默认为0

5  评论表(ershou_pinglun

序号
字段名
字段类别
说明
备注
1
pid
int
Id
主键
2
pinglun_wid
int
物品id
默认值为0
3
user_name
varchar(20)
会员名

4
pinglun_nr
varchar(200)
内容

5
Pinglun_time
datetime
时间

6  网站新闻表(ershou_news

序号
字段名
字段类别
说明
备注
1
nid
tinyint(6)
设置新闻编号

2
news_title
varchar(100)
设置新闻标题

3
news_class
varchar(20)
设置新闻类别

4
news_ly
varchar(30)
新闻来源

5
news_jishu
int
浏览次数
默认值为0
6
news_nr
text
新闻内容

7
news_time
datetime
设置添加时间

8
news_guoqi
Char(2)
设置是否过期
默认值为1
9
news_name
varchar(20)
发表新闻的管理员帐号
主键

7  物品信息表(ershou_wupin

序号
字段名
字段类别
说明
备注
1
wid
int
物品id
主键
2
bclass_name
varchar(20)
所属大类别

3
class_name
varchar(20)
所属小类别

4
wuping_name
varchar(40)
物品名称

5
wuping_jishu
int
浏览次数
默认设置为0
6
wuping_nr
text
物品介绍

7
user_name
varchar(20)
用户帐号

8
wuping_time
datetime
发表时间

9
wuping_guoqi
int
交易状态
默认设置为1

8:管理员信息表(ershou_manager

序号
字段名
字段类别
说明
备注
2
manager_name
varchar(20)
管理员名称
主键
3
manager_pass
varchar(20)
管理员密码

4
manager_sup
int
标志为管理员权限
默认值为0

1.5 系统安全

MD5是在Web应用程序中最常用的密码加密算法。由于MD5是不可逆的,因而经过MD5计算得到后的密文,不能通过逆向算法得到原文。
所谓MD5,即"Message-Digest Algorithm 5(信息-摘要算法)",它由MD2MD3MD4发展而来的一种单向函数算法(也就是HASH算法),它是国际著名的公钥加密算法标准RSA的第一设计者R.Rivest于上个世纪90年代初开发出来的。MD5的最大作用在于,将不同格式的大容量文件信息在用数字签名软件来签署私人密钥前"压缩"成一种保密的格式,关键之处在于——这种"压缩"是不可逆的。
Web应用程序中使用MD5加密文本密码的初衷,就是为了防止数据库中保存的密码不幸泄露后被直接获得。但攻击者不但拥有数据量巨大的密码字典,而且建立了很多MD5原文/密文对照数据库,能快速地找到常用密码的MD5密文,是破译MD5密文的高效途径。然而,MD5密文数据库所使用的是最常规的MD5加密算法:原文-->MD5-->密文。因此,使用字符串次序干涉MD5算法,使现成的MD5密文数据库无所作为。此函数是把MD5运算后的密文字符串的顺序调转后,再进行一次MD5运算。函数代码如下:
function md5_5($psw)
  //得到数据的密文
    $ psw = md5($psw);
    //再把密文字符串的字符顺序调转
    $ psw = strrev($psw);
    //最后再进行一次MD5运算并返回
    return md5($psw); 



系统测试:

1.1 本地服务器测试

本系统是基于Windows平台,在PHPMYSQLApache的环境下运行的;启动Apache应用服务器,打开Internet Explorer,在URL地址中输入http://localhost,即可打开系统首页。经过测试,本系统已经能够顺利完成系统要求的基本功能,达到预期目标。

1.2 远程服务器测试

LinuxPHPMYSQLApache的环境下;用户远程访问此系统,页面会出现乱码。就此问题经过如下分析,并给出解决方案:
系统显示信息时出现了中文文字显示的问题。系统文件乱码的出现是由于编码(charset)设置错误,导致浏览器以错误的编码来解析
此系统测试时遇到的主要是数据库连接编码指的是进行数据库操作时以哪种编码与数据库传输数据,由于Linux操作系统上数据库采用UTF8编码,而网页的页面申明编码是GB2312这时候在PHP脚本里面直接SELECT数据出来的就是乱码,需要在查询前先使用:
Mysql_query ("SET NAMES GBK");
来设定MYSQL连接编码,保证页面申明编码与这里设定的连接编码一致(GBKGB2312的扩展)。
此问题解决后,继续测试系统。能够顺利完成系统要求的基本功能,系统在远程服务器上运行成功。


最新毕业设计成品

版权所有© 帮我毕业网 并保留所有权利

QQ 1370405256 微信 biyebang

QQ:629001810微信:biyebang

收缩