濮阳杆衣贸易有限公司

主頁 > 知識庫 > PHP cookie,session的使用與用戶自動登錄功能實現(xiàn)方法分析

PHP cookie,session的使用與用戶自動登錄功能實現(xiàn)方法分析

熱門標(biāo)簽:廣東廣州在怎么申請400電話 外呼系統(tǒng)能給企業(yè)帶來哪些好處 開發(fā)地圖標(biāo)注類網(wǎng)站 咸寧銷售電銷機(jī)器人系統(tǒng) 400電話蘭州申請請 百度地圖標(biāo)注偏差 百度地圖怎樣標(biāo)注圖標(biāo) 電銷機(jī)器人問門薩維品牌my 余姚電話機(jī)器人

本文實例講述了PHP cookie,session的使用與用戶自動登錄功能實現(xiàn)方法。分享給大家供大家參考,具體如下:

cookie的使用

//生成cookie
//注釋:setcookie() 函數(shù)必須位于 html> 標(biāo)簽之前。
//setcookie(name, value, expire, path, domain);  //名稱,值,過期時間,有效路徑,有效域名
//path,可選;如果路徑設(shè)置為 "/",那么 cookie 將在整個域名內(nèi)有效.如果路徑設(shè)置為 "/test/",那么 cookie 將在 test 目錄下及其所有子目錄下有效。默認(rèn)的路徑值是 cookie 所處的當(dāng)前目錄。
//domain,可選;為了讓 cookie 在 example.com 的所有子域名中有效,您需要把 cookie 的域名設(shè)置為 ".example.com"。當(dāng)您把 cookie 的域名設(shè)置為 www.example.com 時,cookie 僅在 www 子域名中有效。默認(rèn)當(dāng)前域名。
setcookie("user", "Alex Porter", time()+3600);
setcookie("userid", "1000569852", time()+3600);
//獲取
var_dump($_COOKIE);
// isset() 函數(shù)來確認(rèn)是否已設(shè)置了 cookie:
if (isset($_COOKIE["user"])){
 echo "Welcome " . $_COOKIE["user"] . "!br />";
}
else{
 echo "Welcome guest!br />";
}
//當(dāng)刪除 cookie 時,您應(yīng)當(dāng)使過期日期變更為過去的時間點。
setcookie("user", "", time()-3600);

session的使用

//session特定:可供應(yīng)用程序中的所有頁面使用;會話信息是臨時的,在用戶離開網(wǎng)站后將被刪除。
// 虛擬主機(jī)用戶。 設(shè)置一個存放目錄,需要可讀寫權(quán)限
$savePath = getcwd().'/session_save_dir/';
//echo $savePath;
session_save_path($savePath);//session_start 開啟前。
session_id('phpjianlong'); // session_start() 函數(shù)之前調(diào)用 session_id();命名方式同變量
session_start();
//存儲和取值
$_SESSION['views']=123456789;
$_SESSION['name']='php建龍';
$_SESSION['array']=array('a','b','c','d');
echo "Pageviews=". $_SESSION['views'];
var_dump($_SESSION);
//判斷是否存在
if(isset($_SESSION['views'])){
 $_SESSION['views']=$_SESSION['views']+1;
}
else{
 $_SESSION['views']=1;  //不存在賦值
}
echo "Views=". $_SESSION['views'];
//session的刪除
unset($_SESSION['name']);
var_dump($_SESSION);
//注釋:session_destroy() 將重置 session,您將失去所有已存儲的 session 數(shù)據(jù)。
session_destroy();  //不帶參數(shù)
session_start();  //再次開啟session是,重新初始化$_SESSION數(shù)組;
var_dump($_SESSION);
//獲取/設(shè)置 當(dāng)前會話 ID。;瀏覽器會自動生成名為PHPSESSID的cookie
echo session_id();
session_id('phpjianlong'); // session_start() 函數(shù)之前調(diào)用 session_id();命名方式同變量

session和cookie的區(qū)別:

1、session在服務(wù)器,cookie存儲在瀏覽器
2、session可以存儲數(shù)組,cookie value只能是字符串
3、session不能設(shè)置有效期,cookie可以設(shè)置有效期
4、session基于cookie判斷用戶信息,禁用cookie,session受影響不能用。還可以手動通過URL傳值、隱藏表單傳遞Session ID。用文件、數(shù)據(jù)庫等形式保存Session ID,

URL 形如:http://www.openphp.cn/index.php?PHPSESSID= bba5b2a240a77e5b44cfa01d49cf9669

用戶自動登錄的實現(xiàn)

//方法1: Cookie,在 Cookie 中保存用戶名和密碼(可能是 md5 加密后字符串),并在每次請求頁面的時候進(jìn)行驗證。如果用戶名和密碼存儲在數(shù)據(jù)庫,每次都要執(zhí)行一次數(shù)據(jù)庫查詢,給數(shù)據(jù)庫造成多余的負(fù)擔(dān)。因為客戶端 Cookie 中的信息是可能被用戶查看和修改。不安全舍棄此方法。
//方法2:session,用cookie長期保存session id;
//系統(tǒng)臨時文件夾找到這個 Session 文件,一般文件名形如:sess_4c83638b3b0dbf65583181c2f89168ec,后面是 32 位編碼后的隨機(jī)字符串。用編輯器打開它,看一下它的內(nèi)容:
//變量名|類型:長度:值;
//設(shè)置 Session 的生存期:
session_start();
// 保存5天
$lifeTime = 5 * 24 * 3600;
setcookie(session_name(), session_id(), time() + $lifeTime, "/");
//之后此瀏覽器在此輸入對應(yīng)網(wǎng)址,服務(wù)器獲取cookie保存的sessionid;根據(jù)sessionid的內(nèi)容判斷,實現(xiàn)自動登錄。

更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《PHP中cookie用法總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》、《PHP基本語法入門教程》、《PHP運算與運算符用法總結(jié)》、《PHP網(wǎng)絡(luò)編程技巧總結(jié)》及《php字符串(string)用法總結(jié)》

希望本文所述對大家PHP程序設(shè)計有所幫助。

您可能感興趣的文章:
  • PHP的cookie與session原理及用法詳解
  • PHP實現(xiàn)cookie跨域session共享的方法分析
  • PHP+Apache實現(xiàn)二級域名之間共享cookie的方法
  • PHP CURL中傳遞cookie的方法步驟
  • php更新cookie內(nèi)容的詳細(xì)方法

標(biāo)簽:重慶 麗江 衡陽 鷹潭 臨沂 巴彥淖爾 銅陵 十堰

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《PHP cookie,session的使用與用戶自動登錄功能實現(xiàn)方法分析》,本文關(guān)鍵詞  PHP,cookie,session,的,使用,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《PHP cookie,session的使用與用戶自動登錄功能實現(xiàn)方法分析》相關(guān)的同類信息!
  • 本頁收集關(guān)于PHP cookie,session的使用與用戶自動登錄功能實現(xiàn)方法分析的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    崇州市| 新晃| 凉城县| 阳高县| 修水县| 沐川县| 布拖县| 开阳县| 文登市| 冀州市| 宣恩县| 蛟河市| 林芝县| 股票| 上林县| 昌江| 克什克腾旗| 长顺县| 综艺| 嘉荫县| 永德县| 共和县| 盐山县| 逊克县| 固安县| 河津市| 肃南| 兴和县| 民乐县| 长顺县| 许昌市| 凤台县| 克拉玛依市| 柳林县| 伊吾县| 北流市| 正蓝旗| 鄄城县| 灵山县| 海南省| 疏勒县|