1.session
(1)session存储在服务器的
(2)session每个人存一份
(3)session有默认的过期时间
(4)session里面可以存储任意类型的数据
安全,对服务造成压力
用法:
1.当一个页面需要使用session的时候,需要在页面顶部加session_start();
2.操作session
赋值 $_SEESION["uid"] = "";
取值 $_SESSINO["uid"]
2.cookie
(1)cookie存储在客户端的
(2)cookie每人存一份
(3)cookie没有默认过期时间
(4)cookie只能存储字符串
不安全,不会对服务器造成压力
用法:
1.操作cookie
赋值:setcookie(key,value)
取值:$_COOKIE["uid"]
<?php $_SESSION["uid"] = "zhangsan"; setcookie("uid","lisi"); ?>
取值:
取值可以在任意页面取值,比如说做登录页面时,可以把登录名、密码名等信息赋值给 $_SESSION["uid"],在同一个浏览器上的其它页面也可以取到登录名、密码名等的值,前提是赋值的页面要先打开过,如果直接打开其它页面取值,将无法取到。再就是关闭浏览器以后再打开,也要先打开赋值页面,其它页面才能取到值。
需要用到此方法时,直接输出即可(记得在页面顶部加session_start();)
<?php echo $_SESSION["uid"]; echo $_COOKIE["uid"]; ?>
登录:
<form action="dlchuli.php" method="post"> <div>用户名:<input type="text" name="uid" /></div> <div>密码:<input type="text" name="pwd" /></div> <div><input type="submit" value="登录" /></div> </form>
session_start(); $uid = $_POST["uid"]; $pwd = $_POST["pwd"]; include("../DBDA.class.php"); $db = new DBDA(); $sql = "select pwd from users where uid='{$uid}'"; $mm = $db->StrQuery($sql); if($mm == $pwd && $pwd != "") { $_SESSION["uid"] = $uid; header("location:main.php"); }