回顾
PDO:数据库抽象层
PDO三大类:PDO类(初始化连接,发送SQL语句),PDOStatement类(数据操作,执行预处理),PDOException类(异常处理)
过程:
1. 连接:new PDO;2.发送SQL(exec/query/prepare);3.解析结果(fetch系列/execute);4.释放资源(两个对象:PDO对象和PDOStatement对象)
异常处理:try{//有可能出错的语句//主动抛出异常throw new PDOException;}catch(PDOException $e){//自定义的错误处理方式}
反射:帮助程序员更好的了解一个类的内部结构,从而更好的去使用类。
安装ecshop
1. 下载ecshop:ecshop是一种b/s结构软件,b/s结构的安装,大部分的情况下指的是将已经提供好(打包)的数据(数据库SQL)在本地进行安装。下载地址:http://www.ecshop.com
2. 解压安装
a) 解压
b) 解压文件内部文件夹内有三个文件:
c) 将核心包(upload),移动到服务器网站根目录(htdocs),并且重命名为ecshop
d) 安装:在浏览器中打开进入到ecshop的环境:/install/index.php
3. 安装步骤
a) 协议界面
b) 环境监测界面
发现不支持图片处理,而ecshop需要图片处理。
PHP需要借助图片处理扩展:GD扩展。需要在php.ini中加载gd扩展
重启Apache服务器
c) 刷新环境监测界面
d) 系统环境配置界面
i. 数据库环境配置
ii. 管理员配置(后台管理员信息)
iii. 数据配置(选择系统提供的模拟数据)
4. 点击安装(系统自动安装)
5. 查看ecshop的目录结构
前台部分
后台部分
6. 进入到前后台
进入之后都会出现很多错误,错误的原因是PHP版本的不兼容,所以需要关闭错误信息。针对性的关闭ecshop的错误处理。
必须修改前台和后台的公共文件:init.php,在这两个文件里面都有控制当前项目是否显示错误的信息。(display_error)
前台init.php
后台init.php
删除原来系统遗留的缓存文件和安装目录
项目制作
需求:帮助传智播客做一套电子商务网站,用户能够选择商品并进行购车和订单处理,能够进行在线支付,支付完成之后就会发货(虚拟或者实物),用户点击收货。
注意:不希望使用任何人已经写好的任何成熟的代码。
项目架构
项目架构包含三个部分:项目结构,代码结构,数据库结构
项目结构:确定项目采用什么形式进行开发
1. 确定使用什么语言进行开发? --- Java,php,asp,jsp… PHP
2. 软件架构:c/s,b/s b/s
3. 代码开发模式 :源码,框架,二次开发 源码
数据库结构:确定采用什么数据库来进行数据处理
1. 根据数据的使用方式来选择数据库类型:关系型和非关系型 关系型
2. 根据数据的实际的并发程度选择数据库产品:mysql,oracle,access mysql
3. 根据数据的安全来选择存储引擎:myisam和InnoDB 默认的
4. 数据库命名规范:前缀(与项目名字)+名字
5. 字符集 utf8
代码结构:规定代码改如何开发和保存
1. 目录结构保存文件:扁平化和树状结构 树状结构
2. 文件命名规范:见名知意,类必须使用:类名.class.php
3. 开发模式:面向过程和面向对象混合
4. 设计思想:不同逻辑的代码进行分文件保存,业务逻辑交给php文件,数据逻辑交给php的类文件,数据显示交给html文件,所有的请求都只请求php文件(是类文件和html文件连接的纽带)
5. 文件编码:utf-8
6. 操作数据库模式:PDO,mysql,mysqli mysql
7. 版本控制:采用什么方式控制文件安全 SVN
项目安排
仿照ecshop的后台的结构,增加一个shop的项目,采用php源码开发,使用面向过程和面向对象混搭的思想,采用mvc的模式实现。
shop项目
项目目录结构搭建
前后台放到一起,后台新建一个文件夹admin,放到前台文件的里面
1. 在网站根目录(虚拟主机),建立一个文件夹叫D:/class/php141115/shop
2. 搭建前台环境文件夹结构
3. 搭建后台目录结构
4. 将所有该项目的模板文件(前端提供好的)放到templates文件夹下。
搭建虚拟主机
1. 在Apache的httpd-vhosts.conf配置虚拟主机
2. 配置域名服务器:hosts
3. 重启Apache
4. 验证:在浏览器中输入www.shop.com
凡是请求的功能类似的文件都放到一个文件里面:登录,退出和验证码都与权限相关,因此创建一个权限的php文件,所有的登录,退出和验证码功能,都请求权限文件。