- 使用 php 程式語言操作 Session 與 Cookie 方式!
PHP 使用 Cookie 的方式
- 使用 Cookie 可以暫時存放需要的資料內容
- Cookie 資料內容是暫時存放於本機端上!
- 使用完 Cookie ,應立即清除資料,以利資安!
- 程式中,設定 cookie !例:user.php
<?php setcookie('username','peter'); ?>
- 列印出 cookie 內容!例:getuser.php
<?php print 'Hello, '. $_COOKIE['username']; ?>
- 設定 cookie 的有效時間!例:usertimes.php
<?php // cookie 一小時後過期 setcookie('short-user','Peter',time()+60*60); // cookie 一天後過期 setcookie('longer-user','Peter',time()+60*60*24); // cookie 指定日期過後,才會過期 $datetime = new DataTime("2021-10-01 12:00:00"); setcookie('date-user','Peter',$datetime->format('U'); ?>
- 指定 cookie 可被利用的目錄路徑!例:pathuser.php
<?php // 網頁根目錄下的所有檔案都可以利用的 cookie 設定 setcookie('longer-user','Peter',time()+60*60*24,'/'); // 網頁目錄 /manager 底下的檔案才可以利用的 cookie 設定 setcookie('short-user','Peter',time()+60*60,'/manager/'); ?>
- 指定 cookie 可被指定的網域名稱利用!例:domainuser.php
<?php // example.com 網域的網頁根目錄下的所有檔案都可以利用的 cookie 設定 setcookie('longer-user','Peter',time()+60*60*24,'/','.example.com'); ?>
- 強調安全的 cookie 使用方式!例:secureuser.php
<?php setcookie('short-user','Peter',time()+60*60,'/manager/',true,true); //第六個欄位:只用於 https 連線 //第七個欄位:不給 JavaScripts 利用 ?>
- 刪除 cookie 的方式!例:deleteuser.php
<?php setcookie('longer-user',''); ?>
- 使用 Session 時,PHP 會在本機端建立一個 PHPSEDDID 的 Cookie 暫時存放遠端站台的 Session ID 編號
- 如果沒有 PHPSEDDID 的 cookie 存在,PHP 程式會自動建立!
- 程式中,設定與使用 session_start() !例:counter.php
<?php session_start(); if (isset($_SESSION['count'])){ $_SESSION['count'] = $_SESSION['count'] + 1; } else { $_SESSION['count'] = 1; } print "目前這頁面己經被重載了 ".$_SESSION['count']. " 次"; ?>
- 程式中,設定 Session 使用時間 !例:timescounter.php
<?php ini_set('session.gc_maxlifetime',600); // 設定600 秒 session_start();