PHP综合实验.docx
《PHP综合实验.docx》由会员分享,可在线阅读,更多相关《PHP综合实验.docx(12页珍藏版)》请在冰豆网上搜索。
PHP综合实验
华北科技学院计算机学院综合性实验
实验报告
课程名称Web应用程序设计PHP
实验学期2013至2014学年第2学期
学生所在系部计算机
年级11级专业班级信管B11-1
学生姓名学号
任课教师
实验成绩
计算机学院制
《Web程序设计PHP》课程综合性实验报告
开课实验室:
基础五实验室2014年6月25日
实验题目
电子商务系统
一、实验目的:
1、掌握PHP基本语法及应用。
2、掌握SESSION和COOKIE的使用。
3、掌握使用PHP和页面进行交互。
4、掌握PHP图像处理应用。
5、掌握MySQL数据库的使用及使用PHP操作MySQL数据库。
6、了解系统开发的其他工具及语言。
7、掌握系统开发的基本流程。
二、实验设备及环境:
硬件:
多媒体计算机
软件:
Windows系列操作系统、PHP系列运行及编译环境、MySQL数据库
三、实验内容及要求:
1、需求分析
迎合现在网上购物、方便用户根据自身的购物需求与商场管理员进行沟通以及与其他用户进行沟通对话、提出购物时的疑问解决自己购物问题。
网站的样式趋于简洁明了,对于不熟悉网上购物系统的用户可以快速使用。
电子商城的主要功能结构图,如图1.
图1电子商城功能结构图
1.1前台功能需求
1)商品列表:
将所有可以出售的产品显示出来,并且分门别类,每一类都有相应的产品。
2)订单:
显示该用户的所有订单信息,包括完成的和未完成的。
3)购物车:
在登录用户的状态下,查看添加进购物车的产品。
未添加的情况下,购物车为空。
4)用户信息:
显示登录用户的注册信息。
5)密码修改:
更改登录用户的密码。
1.2后台功能需求
1)商品清单:
显示所有库存商品的信息,可以对信息进行修改和删除。
2)商品添加:
添加新的商品。
3)订单管理:
可以查看所有用户的订单信息,并且能够对订单进行管理,包括查看详情和删除。
4)密码修改:
对管理员密码进行修改。
2、系统概要设计(包括文件夹组织结构)
在本地站点中应该用文件夹来合理构建文档结构。
首先为站点创建一个主文件夹,实例在PHP服务器的www文件下创建了“electronicShop”文件夹,表示该前台应用。
然后在其中创建多个子文件夹,最后将文档分类存储到相应的文件夹下。
例如,可以在“images”的文件夹中放置网站页面的图片,可以在“admin”文件夹中放置关于管理者后台管理的网页.
如图2所示为将要完成的实例文档结构。
图2文件夹组织结构
3、数据库设计
3.1总体ER图如图3。
图3总体ER图
3.2数据库主要表的结构设计
Product表
字段名
字段类型
字段长度
是否主键
pid
int
10
是
proname
varchar
50
否
price
Float
24
否
proid
int
10
否
tu
varchar
10
否
product_contents
text
否
Orders表
字段名
字段类型
字段长度
是否主键
orderid
int
10
是
username
varchar
50
否
flag
int
2
否
time
datetime
10
否
Orderdetail表
字段名
字段类型
字段长度
是否主键
orderdetailid
int
10
是
orderid
int
10
否
goodsid
int
10
否
amount
int
10
否
Producttype表
字段名
字段类型
字段长度
是否主键
id
int
10
是
protype
varchar
50
否
User表
字段名
字段类型
字段长度
是否主键
username
varchar
50
是
password
varchar
50
否
sex
varchar
50
否
birth
date
否
phone
varchar
50
否
address
varchar
50
否
4、编码
1)商城首页,如图4。
图4商城首页
2)前台关于购买物品的订单页面,如图5。
图5订单列表
其中相关的代码如下:
php
$uname=@$_SESSION["user"];$pagesize=10;
$sql="select*fromorderswhereusername='$uname'orderbyorderiddesc";
$rs=mysql_query($sql);
$recordcount=mysql_num_rows($rs);
$pagecount=($recordcount-1)/$pagesize+1;
$pagecount=(int)$pagecount;
$pageno=$_GET["pageno"];
if($pageno==""){$pageno=1;}
if($pageno<1){$pageno=1;}
if($pageno>$pagecount){$pageno=$pagecount;}
$startno=($pageno-1)*$pagesize;
$sql="select*fromorderswhereusername='$uname'orderbyorderiddesclimit$startno,$pagesize";
$rs=mysql_query($sql);
?
>
3)前台购物车界面,如图6。
图6购物车界面
其中相关的代码如下:
php
$id=$_GET["id"];
$goods=$_SESSION["goodsArray"];
if($id<>""){
if($goods[$id]==""){$goods[$id]=1;}
else{$goods[$id]=$goods[$id]+1;}
$_SESSION["goodsArray"]=$goods;
}
?
>
4)后台商品入库界面,如图7。
图7后台商品入库界面
其中相关的代码如下:
if($_POST["Submit"]){
$typ=$_POST["itm"];
$name=$_POST["proname"];
$price=$_POST["proprice"];
$imagepath=Upload("images","/imagepass/images/",
array(".gif",".jpg",".jpeg"),1048576);
$content=$_POST["content"];
$sql="insertintoproduct(proname,price,proid,tu,product_contents)
values('$name',$price,$typ,'$imagepath','$content')";
mysql_query($sql);
echo"alert('添加成功!
');
window.location='index.php'";
die();}
5.测试
用户登录用例测试:
图8用户成功登录商城
四、心得体会
通过对网上书城系统的设计,使我们进一步了解了所学的电子商务系统和数据库知识,并且对HTML语言,PHP语言等知识有了初步了解。
这次课程设计,由本人通过查阅相关资料独立完成了网上书城系统的系统规划、系统分析、系统设计等。
通过这次课题研究,使我们对电子商务网站的开发有了一定的了解。
对软件开发方法和手段,我们都有了一定的认识,加深理解了在课程中、书本上学到的知识和理论,并使其在课题研究中得到运用而且让我得到了实践的收获。
希望在以后的学习中多接触、对比一些案例能够增长对网上电子商务系统设计的一些知识。
教师评价
评定项目
A
B
C
D
评定项目
A
B
C
D
算法正确
界面美观,布局合理
程序结构合理
操作熟练
语法、语义正确
解析完整
实验结果正确
文字流畅
报告规范
题解正确
其他:
评价教师签名:
年月日