基于PHP的网上购物网站毕业设计(含源文件) 联系客服

发布时间 : 星期一 文章基于PHP的网上购物网站毕业设计(含源文件)更新完毕开始阅读a97aa8a551e79b896802264d

表3-3 产品分类表(classes)结构

序 号 1 2 3 4 5 6 字 段 rid Email Products_id review Date_added viewed 描 述 自动编号 用户名称 产品 id 评论内容 添加时间 类型和长度 Mediumint(8) Varchar(30) Int(10) text Int(10) 主 键 是 否 否 否 否 否 可 空 否 否 否 否 否 否 默认值 无 无 无 0 0 0 被浏览次数 Mediumint(8) 产品的信息列表记录的是产品的基础信息,包括产品的价格、重量、名称、所属分类、详细描述等字段。表结构如表3-4所示

表3-4产品表(products)结构

序 号 1 2 3 4 5 字 段 Products_id Classes_id name model image 描 述 自动编号 分类编号 产品名称 产品单位 产品展示图片链接 类型和长度 Mediumint(8) Mediumint(8) Varchar(64) Varchar(64) Varchar(64) 主 键 可 空 默认值 是 否 否 否 否 否 否 否 否 否 无 无 无 无 无 6 7 8 9 price weight description manufacturer 产品价格 产品重量 产品描述 生产厂商 Decimal(15.2) Decimal(5.2) Text Varchar(64) 否 否 否 否 否 否 否 否 0 0 无 无 订单表主要记录的就是用户订单的详细信息,包括购买人、购买人的联系方式、产品的价格、邮寄方式等信息。由于每次用户可能会定购多种产品,所以订单将分成两个表来记录,一张用来记录联系信息,一张表用来记录联系信息和产品之间的关联。表结构如表3-5和表3-6所示

19

表3-5订单表联系信息(orders)结构

序 号 1 2 字 段 Order_id D_name 描 述 类型和长度 主 键 可 空 默认值 是 否 否 否 无 无 自动编号 Mediumint(8) 用户联系姓名 Varchar(100) 3 4 5 cid D_street_address D_tel_mobile 会员id Int(10) 否 否 否 否 否 否 无 无 无 会员地址 Varchar(100) 会员联系方式 Varchar(100) 6 7 Orders_status Shipping_method 订单状态 Varchar(100) 邮递方式 Int(10) 否 否 否 否 无 无 表3-6订单产品信息关联表(orders_products)结构

序 号 1 2 字 段 opid Orderd_id 描 述 自动编号 于orders表关联id 类型和长度 Mediumint(8) Int(10) 主 键 可 空 默认值 是 否 否 否 无 无 3 4 5 Products_id price Final_price 产品关联id 产品价格 最终价格 Int(10) Decimal(15.2) Decimal(15.2) 否 否 否 否 否 否 无 0 0 邮寄方式表主要是为计算邮寄费用产生的,不同的邮寄方式会带来不同的邮寄费用。表结构如表3-7所示

表3-7 邮寄方式表(shipping)结构

序 号 1 2 字 段 id Shippingname 描 述 自动编号 费用名称 类型和长度 Mediumint(8) varchar(200) 主 键 可 空 是 否 否 否 默认值 无 无 20

3

Fee 费用计算公式 Varchar(200) 否 否 无 管理组设置表是为了存储管理员的不同管理权限。表结构如表3-8所示

表3-8管理组设置表(Admingroups)结构

序 号 1 2 3 4 字 段 描 述 类型和长度 主 键 可 空 默认值 AdminGroupid Classes Grouptitle Allow_class_see 自动编号 Smallint(6) 类型 Varchar(30) 是 否 否 否 否 否 否 否 无 无 无 0 组名称 Varchar(30) 查看会员组 float 5 Allow_class_add 添加会员组 Int(10) 否 否 0 6 Allow_class_delete 删除会员组 Int(10) 否 否 0 7 8 9 Allow_product_see 查看商品 Int(10) 否 否 否 否 否 否 否 否 0 0 0 0 Allow_product_edit 编辑商品 Int(10) Allow_product_add 上传商品 Int(10) 10 Allow_product_delete 删除商品 Int(10) 管理员信息表主要是记录管理员的信息。表结构如表3-9所示

表3-9 管理员信息表(customers)结构

序 号 1 2 3 4 5 6 字 段 Admin_id name password admingroupsid createdate lastvisit 描 述 自动编号 名称 密码 管理组 创建时间 最后登录时间

类型和长度 Smallint(6) Varchar(30) Varchar(30) Varchar(30) Int(10) Int(10) 主 键 可 空 默认值 是 否 否 否 否 否 否 否 否 否 否 否 无 无 无 无 无 无

21

4系统详细设计

4.1系统设计

在系统总体设计阶段已经提到过本系统采用MVC体系架构,但MVC架构具体是怎么实现的呢?下面我将介绍系统的具体实现功能。 4.2 公共模块设计

结构合理的系统都是经过改良的,将共同的东西取出来放置到相同的地方供引用和调用时设计系统必须要做的工作。 4.2.1数据库公共模块

PHP中将创建数据库连接connection 独立出来做成公用的文件是最常用的做法,我将其命名为config.php,放置在include目录下。这个目录用来存储供整个系统公用的目录。当页面需要使用数据库连接时,只需要通过PHP的引用公用文件即可,这样不但避免了每个页面都编写数据连接,而且也能避免当数据连接发生变化时去修改每一个页面的麻烦。Db_mysql.php中使用了两种方式来获取与数据库连接:一种是获取已有的连接mysql_pconnect($dbuser,$dbpw),这样无须重复的建立连接,节约了资源:另外一种方式是mysql_connect($dbhost,$dbuser,$dbpw),这种方式是获取一个新的连接。在获取连接资源时,通常会传递3个参数,这里分别是$dbhost,$dbuser,$dbpw,代表的是带有端口号的主机地址,登录用户名和密码。

Config.php中的定义代码如下所示:

Define(‘DB_SERVER’,’localhost’);//数据库服务器 Define(‘DB_SERVER_USERNAME’,’root’);//数据库用户名 Define(‘DB_SERVER_PASSWORD’,’’);//数据库密码 Define(‘DB_DATABASE’,’shoopdb’);//数据库名 4.2.2 common.php和golbal.php单元

Common.php是公共函数的文件,将公共函数独立出来可以大大节约编程时间及编程量,也为后期维护带来很大方便。

Global文件是对全局变量的处理。

22