2024年3月10日发(作者:)

课题

课时 2课时(90 min)

知识技能目标:

(1)了解Session及其工作机制

(2)掌握创建和管理会话的相关操作

(3)了解Session的生命周期及其设置方法

教学目标 (4)掌握Session临时文件及页面缓存的设置方法

素质目标:

(1)能够领会PHP中session在实际生活中的作用

(2)培养学生的逻辑思维、辩证思维和创新思维能力

(3)心系国家建设,坚持以人民为中心,强化民族意识

教学重难点

教学方法

教学用具

教学设计

教学重点:Session的生命周期及其设置方法

教学难点:Session及其工作机制

案例分析法、问答法、讨论法、讲授法、实践法

电脑、投影仪、多媒体课件、教材

第1节课: 课前任务→考勤(2 min)→问题导入(5 min)→传授新知(38 min)

第2节课:问题导入(5 min)→传授新知(20 min)→课堂实训(15 min)→课堂小结(3 min)→作

业布置(2 min)

Session

教学过程 主要教学内容及步骤

第一节课

【教师】布置课前任务,和学生负责人取得联系,让其提醒同学通过APP或其

设计意图

通过课前任务,

使学生预习本节课

要学习的知识,增

加学生的学习兴趣

培养学生的组织

纪律性,掌握学生

的出勤情况

通过问题导入,

引导学生主动思

考,激发学生的学

习兴趣

课前任务

他学习软件,预习本节课要学习的知识

【学生】完成课前任务

考勤

(2 min)

【教师】使用APP进行签到

【学生】班干部报请假人员及原因

【教师】提出以下问题:

问题导入

(5 min)

Session是什么?它和cookie有什么区别呢?

【学生】聆听、思考、举手回答

【教师】通过学生的回答引入要讲的知识,讲解PHP中Session的相关知识

9.2 Session

✈【教师】安排学生扫码观看视频“Session”,讲解知识

✈【学生】扫码观看、理解、记忆

Cookie虽然可以在客户端保存一定数量的会话状态,但由于Cookie本身容量

有限,全部采用Cookie来解决会话控制是不现实的。此处介绍另外一种解决方案,

就是只在客户端保存一个会话标-识符,然后将会话数据存储在服务器或数据库中。

这种解决方案称为Session。

9.2.1 了解Session

通过教师的讲解

和演示,使学生了

解PHP中Session

的相关知识

1

传授新知

(38 min)

运行应用程序的“打开→使用→关闭”过程类似于一次会话。在这个过程中,

计算机对用户的身份、启动与关闭应用的时间较为明确。但在互联网上存在一个问

题,即服务器不明确用户的身份和行为,这是由于HTTP地址不能维持状态。

PHP Session通过在服务器上存储用户的相关信息,解决了这个问题,如果没

有Session,则用户每进入一个页面都需要重新登录一次。然而,会话信息是临时

的,在用户离开网站后将被删除。若要永久储存信息,可以把数据存储在数据库中。

Session的工作机制是:为每个访问网站的用户创建一个唯一的id(UID),并

基于这个UID来存储变量。UID既可以存储在Cookie中,也可以通过URL进行传

导。

9.2.2 创建和管理会话

创建一个会话主要包括启动会话、注册会话、使用会话和删除会话等步骤。

1.启动会话

在PHP中,启动会话(创建一个会话状态)一般使用session_start()函数。使

用session_start()函数创建会话的语法格式如下:

bool session_start([array $options = [] ]);

✈【教师】通过多媒体展示例9-3的代码,并进行讲解

创建一个会话状态。实例代码如下:

session_start (); //创建一个会话

$_SESSION['dia'] = '创建会话'; //在Session中存储数据

echo $_SESSION['dia'];

>

使用session_start()函数之前,浏览器不能有任何输出(包括和标

签及任何空格),否则会产生错误,所以要把调用session_start()函数放在网页代码

顶端。

2.注册会话

会话变量启动后全部保存在数组$_SESSION[]中。通过数组$_SESSION[]注册

一个会话变量很容易,只要直接给该数组添加一个元素即可。

例如,启动会话且创建一个Session变量并赋值的代码格式如下:

session_start();

$_SESSION['views']=1;

>

3.使用会话

使用会话变量前,需要判断会话变量是否存在,如果不存在就要创建它;如果

存在就可以用数组$_SESSION[]访问该会话变量。

✈【教师】通过多媒体展示例9-4的代码和运行结果,并进行讲解

使用会话。实例代码如下:

session_start(); //启动会话

if(!empty($_SESSION['user'])){ //判断一个会话变量是否为空

$user=$_SESSION['user']; //存在就将会话变量赋给一个变量$user

echo $user; //输出变量$user

//启动会话

//声明一个名为views的Session变量,并赋

//输出Session中存储的数据

2