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>