PHP中session与cookie的简单使用
efbb
10年前
很多时候,我们需要跟踪浏览者在整个网站的活动,对他们身份进行自动或半自动的识别(也就是平时常说的网站登陆之类的功能),这时候,我们常采用Cookie与 Session来跟踪和判断。 Session信息是存放在server端,但session id是存放在client cookie的,当然php的session存放方法是多样化的,这样就算禁用cookie一样可以跟踪。 Cookie是一种在远程浏览器端存储数据并以此来跟踪和识别用户的机制。Cookie是完全保持在客户端的如:IE firefox 当客户端禁止cookie时将不能再使用。
cookie简单实例: <?php if($_GET['out']){ //注销cookie setcookie('id',''); setcookie('password',''); echo "<script>location.href='cookie.php'</script>"; //因为cookies不是及时生效的,只有你再次刷新时才生效,所以,注销后让页面自动刷新。 } //如果用户名和密码是否同时存在,设置cookie if($_POST['name'] && $_POST['password']){ setcookie('id',$_POST['name'],time()+3600); setcookie('password',$_POST['password'],time()+3600); echo "<script>location.href='cookie.php'</script>"; } //判断cookies设置成功后,显示cookie if($_COOKIE['id']&&$_COOKIE['password']){ echo "登录成功<br>"; echo "用户名:".$_COOKIE['id']."<br>"; echo "密码:".$_COOKIE['password']."<br>"; echo "<a href='cookie.php?out=out'>注销cookie</a>"; } ?> <form action="cookie.php" method="POST"> 用户名:<input type="text" name="name"><br> 密 码: <input type="password" name="password"><br> <input type="submit" name="submit" value="提交"> </form> session简单实例: <?php //开启session,必须放在第一句,否则会出错。 session_start(); if($_GET['out']){ unset($_SESSION['id']); unset($_SESSION['password']); } if($_POST['name']&&$_POST['password']){ $_SESSION['id']=$_POST['name']; $_SESSION['password']=$_POST['password']; } if($_SESSION['id']&&$_SESSION['password']){ echo "登录成功<br>"; echo "用户名:".$_SESSION['id']."<br>"; echo "密码:".$_SESSION['password']."<br>"; echo "<a href='session.php?out=out'>注销session</a>"; } ?> <form action="session.php" method="POST"> 用户名:<input type="text" name="name"><br> 密 码: <input type="password" name="password"><br> <input type="submit" name="submit" value="提交"> </form>