Presentation is loading. Please wait.

Presentation is loading. Please wait.

第11章 PHP会话控制.

Similar presentations


Presentation on theme: "第11章 PHP会话控制."— Presentation transcript:

1 第11章 PHP会话控制

2 11.1 什么是会话控制 HTTP是无状态的协议 HTTP ?

3 会话控制的思想 会话控制能够在网站中根据一个会话跟踪用户。做到这点,就可以很容易做到: (1)对用户登录的支持,根据其授权级别和个人爱好显示相应内容 (2)根据会话控制记录该用户行为 (3)实现购物车就要使用会话控制技术

4 11.2 基本的会话功能 PHP会话的原理。 会话通过唯一的会话ID来驱动,它由PHP产生,在会话的生命周期中都会保存在客户端。 会话变量。 会话ID就像一把钥匙,它允许我们注册一些特定的变量,成为会话变量。 两种解决方法。 cookie和session。

5 11.3 简单的session会话管理 使用session会话的基本步骤如下: (1)开始一个会话。 (2)注册并使用会话变量。
(3)注销变量并销毁会话。

6 1、开始一个会话(两种方法可以实现) 方法一:调用session_start()函数实现。
方法二:使用中php.ini文件中的session.auto_start选项完成该设置。

7 2、注册会话变量 (1)会话变量的注册已经有所改变,原来得调用session_register()注册它,现在在数组$_SESSION中。
(2)要创建一个会话变量,只需在这些数组中设置一个元素,如下所示: $_SESSION[‘myvar’] = 5; 该变量将被跟踪,直到session结束或者你手工注销它。

8 3、使用会话变量 (1)要使会话变量在某范围内可以使用,必须首先使用session_start()函数启动一个会话。
(2)检查是否设置了会话变量,通过isset()函数或empty()函数。 (3)然后可以像使用其他变量一样使用session变量。

9 4、注销变量并销毁会话 (1)当使用完一个会话变量之后,可以将其注销。通过注销$_SESSION数组的适当元素,可以直接注销该变量:unset($_SESSION[‘myvar’]); (2)不能销毁整个$_SESSION数组,因为这样将禁用会话功能。要一次销毁所有的会话变量,可以使用如下语句:$_SESSION = array(); (3)当使用完一个会话后,首先应该注销所有会话变量,然后再调用session_destroy()清除所有sessionID。

10 11.4 简单的实例

11 page 1 <?php session_start();
echo "page 1<br /><br />"; $_SESSION["myvar"] = "Hello world!"; echo "会话变量的值是:".$_SESSION["myvar"]; echo "<br /><br />"; ?> <a href = "page2.php"> 下一页</a> page 1 [1] [2]

12 page 2 <?php session_start();
echo "page 2<br /><br />"; echo "会话变量的值是:".$_SESSION["myvar"]; echo "<br /><br />"; unset($_SESSION["myvar"]); ?> <a href = "page3.php"> 下一页 </a> page 2 [1] [2] [3]

13 page 3 <?php session_start();
echo "page 3<br /><br />"; echo "会话变量的值是:". $_SESSION["myvar"]; echo "<br /><br />"; session_destroy(); ?> page 3 [1] [2] [3]

14 11.5 通过会话控制实现身份验证 在这个例子中,我们将结合MySQL和会话控制技术来实现该功能。我们再次使用“PHP和MySQL身份验证”中创建的身份验证数据库。 本例包括3个简单脚本: authmain.php :身份验证应用程序的主体部分 members_only.php :网站的有效用户检查部分,可以确定是否是有效成员 logout.php :注销会话变量并销毁会话

15 实例演示


Download ppt "第11章 PHP会话控制."

Similar presentations


Ads by Google