欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

实现PHP中session和cookie数据传值功能

程序员文章站 2022-03-25 10:25:45
...
1.session 登录上一个页面以后,长时间没有操作,刷新页面以后需要重新登录。

特点:(1)session是存储在服务器;

   (2)session每个人(登陆者)存一份;

   (3)session有默认的过期时间;(如果登录的人过多,数据就会太多,由于存储在服务器,会给服务器造成压力,过一定的时间会清除掉)

   (4)session里面可以存储任意类型的数据。

    由以上特点可以总结出session的特点是比较安全。缺点是对服务器造成一定的压力。

   (5)当一个页面需要使用session时,需要在页面顶部加session_start();要在页面最上面写,前面不能出现任何代码,代码指的是PHP代码,可以有HTML代码。最好是养成习惯,把<?php session_start(); ?>写在页面的最顶部。一个页面写一次就可以。

   (6)操作session。a.赋值。b.取值。

赋值:


<?php
    session_start();//session开始标签,在最顶部写。?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<body>

<?php    
    $_SESSION["uid"] = "zhangsan";//给$_SESSION["uid"]赋值。?>

</body>
</html>

取值:

取值可以在任意页面取值,比如说做登录页面时,可以把登录名、密码名等信息赋值给 $_SESSION["uid"],在同一个浏览器上的其它页面也可以取到登录名、密码名等的值,前提是赋值的页面要先打开过,如果直接打开其它页面取值,将无法取到。再就是关闭浏览器以后再打开,也要先打开赋值页面,其它页面才能取到值。


<?php
    session_start();?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>

<?php
    echo $_SESSION["uid"]?>

</body>
</html>

2.cookie

特点:(1)cookie存储在客户端,浏览器在清除浏览信息时会有cookie清除选项。

   (2)cookie每人存一份。

   (3)cookie没有默认过期时间。

   (4)只能存储字符串。

    由以上特点可以总结出cookie的特点是不安全,不会对服务器造成压力。 

没有特殊要求的话session和cookie都可以使用,但是当涉及到安全性较高时,要选择session。

以上就是实现PHP中session和cookie数据传值功能 的详细内容,更多请关注其它相关文章!