PHP中session與cookie的簡單使用
很多時候,我們需要跟蹤瀏覽者在整個網站的活動,對他們身份進行自動或半自動的識別(也就是平時常說的網站登陸之類的功能),這時候,我們常采用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></pre>