phpcookie使用,PHPcookie

本文目錄一覽:

php里的cookie怎樣使用才是正確的

setcookie() 函數用於設置 cookie。

在下面的例子中,我們將創建名為 “user” 的 cookie,並為它賦值 “runoob”。我們也規定了此 cookie 在一小時後過期:

?php

setcookie(“user”, “runoob”, time()+3600);

?

html

…..

$_COOKIE 變數用於取回 cookie 的值。

?php

// 輸出 cookie 值

echo $_COOKIE[“user”];

// 查看所有 cookie

print_r($_COOKIE);

?

isset() 函數來確認是否已設置了 cookie

刪除 cookie 時,您應當使過期日期變更為過去的時間點。

啟動會話session_start() 函數必須位於 html 標籤之前.

存儲和取回 session 變數的正確方法是使用 PHP $_SESSION 變數:

?php

session_start();

// 存儲 session 數據

$_SESSION[‘views’]=1;

?

?php

// 檢索 session 數據

echo $_SESSION[‘views’];

?

如果您希望刪除某些 session 數據,可以使用 unset() 或 session_destroy() 函數。

望採納,謝謝

php 如何使用cookie安全的保存登錄狀態sessionid

同樣還是將用戶的認證信息保證在一個cookie中,具體如下:

1.cookie名:uid。推薦進行加密,比如MD5(‘站點名稱’+userid)。

2.cookie值:登錄名|有效時間Expires|hash值。hash值可以由”登錄名+有效時間Expires+用戶密碼(加密後的)的前幾位+salt”,salt是保證在伺服器端站點配置文件中的隨機數。

這樣子設計有以下幾個優點:

1.即使資料庫被盜了,盜用者還是無法登錄到系統,因為組成cookie值的salt是保證在伺服器站點配置文件中而非資料庫。

2.如果賬戶被盜了,用戶修改密碼,可以使盜用者的cookie值無效。

3.如果伺服器端的資料庫被盜了,通過修改salt值可以使所有用戶的cookie值無效,迫使用戶重新登錄系統。

4.有效時間Expires可以設置為當前時間+過去時間(比如2天),這樣可以保證每次登錄的cookie值都不一樣,防止盜用者窺探到自己的cookie值後作為後門,長期登錄。

PHP中如何使用Cookie

比如設置一個名為 MyCookier的Cookie,PHP會自動從WEB伺服器接收的HTTP頭裡把它分析出來,並形成一個與普通變數一樣的變數,名為$ myCookie,這個變數的值就是Cookie的值。數組同樣適用。另外一個辦法是引用PHP的全局變數$HTTP_COOKIE_VARS數組。分別舉例如下:(假設這些都在以前的頁面里設置過了,並且仍然有效)echo $MyCookie;echo $CookieArray[0];echo $_COOKIE[“MyCookie”];echo $HTTP_COOKIE_VARS[“MyCookie”];要刪除一個已經存在的Cookie,有兩個辦法:1、SetCookie(「Cookie」, 「」);2、SetCookie(「Cookie」, 「value」 , time()-1 / time() );使用Cookie的限制1、必須在HTML文件的內容輸出之前設置;2、不同的瀏覽器對Cookie的處理不一致,且有時會出現錯誤的結果。3、限制是在客戶端的。

php cookie和session在什麼時候用

Session是由應用伺服器維持的一個伺服器端的存儲空間,用戶在連接伺服器時,會由伺服器生成一個唯一的SessionID,用該SessionID

為標識符來存取伺服器端的Session存儲空間。而SessionID這一數據則是保存到客戶端,用Cookie保存的,用戶提交頁面時,會將這一

SessionID提交到伺服器端,來存取Session數據。這一過程,是不用開發人員干預的。所以一旦客戶端禁用Cookie,那麼Session也會失效。

伺服器也可以通過URL重寫的方式來傳遞SessionID的值,因此不是完全依賴Cookie。如果客戶端Cookie禁用,則伺服器可以自動通過重寫URL的方式來保存Session的值,並且這個過程對程序員透明。

可以試一下,即使不寫Cookie,在使用request.getCookies();取出的Cookie數組的長度也是1,而這個Cookie的名字就是JSESSIONID,還有一個很長的二進位的字元串,是SessionID的值。

大家都知道,http是無狀態的協議,客戶每次讀取web頁面時,伺服器都打開新的會話,而且伺服器也不會自動維護客戶的上下文信息,那麼要怎麼才能實現

網上商店中的購物車呢,session就是一種保存上下文信息的機制,它是針對每一個用戶的,變數的值保存在伺服器端,通過SessionID來區分不同

的客戶,session是以cookie或URL重寫為基礎的,默認使用cookie來實現,系統會創造一個名為JSESSIONID的輸出

cookie,我們叫做session

cookie,以區別persistent

cookies,也就是我們通常所說的cookie,注意session

cookie是存儲於瀏覽器內存中的,並不是寫到硬碟上的,這也就是我們剛才看到的JSESSIONID,我們通常情是看不到JSESSIONID的,但

是當我們把瀏覽器的cookie禁止後,web伺服器會採用URL重寫的方式傳遞Sessionid,我們就可以在地址欄看到

sessionid=KWJHUG6JJM65HS2K6之類的字元串。

明白了原理,我們就可以很容易的分辨出persistent

cookies和session

cookie的區別了,網上那些關於兩者安全性的討論也就一目了然了,session

cookie針對某一次會話而言,會話結束session

cookie也就隨著消失了,而persistent

cookie只是存在於客戶端硬碟上的一段文本(通常是加密的),而且可能會遭到cookie欺騙以及針對cookie的跨站腳本攻擊,自然不如session

cookie安全了。

通常session

cookie是不能跨窗口使用的,當你新開了一個瀏覽器窗口進入相同頁面時,系統會賦予你一個新的sessionid,這樣我們信息共享的目的就達不到了,此時我們可以先把sessionid保存在persistent

cookie中,然後在新窗口中讀出來,就可以得到上一個窗口SessionID了,這樣通過session

cookie和persistent

cookie的結合我們就實現了跨窗口的session

tracking(會話跟蹤)。

在一些web開發的書中,往往只是簡單的把Session和cookie作為兩種並列的http傳送信息的方式,session

cookies位於伺服器端,persistent

cookie位於客戶端,可是session又是以cookie為基礎的,明白的兩者之間的聯繫和區別,我們就不難選擇合適的技術來開發web

service了。

php如何帶cookies訪問需要登錄的網站

使用curl

CURLOPT_COOKIE 設定HTTP請求中”Cookie: “部分的內容。多個cookie用分號分隔,分號後帶一個空格(例如, “fruit=apple; colour=red”)。

CURLOPT_COOKIEFILE 包含cookie數據的文件名,cookie文件的格式可以是Netscape格式,或者只是純HTTP頭部信息存入文件。

CURLOPT_COOKIEJAR 連接結束後保存cookie信息的文件。

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $url); // 請求的地址

curl_setopt($ch, CURLOPT_COOKIEJAR, $cookiesfile); // 連接結束後保存cookie信息的文件

curl_setopt($ch, CURLOPT_COOKIEFILE, $cookiesfile); // 請求時發送的cookie信息文件

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

curl_exec($ch);

curl_close($ch);

php獲取cookie後怎麼使用

php獲取cookie使用方法:

cookie和session都可以暫時保存在多個頁面中使用的變數,但是它們有本質的差別。cookie存放在客戶端瀏覽器中,session保存在伺服器上。它們之間的聯繫是session ID一般保存在cookie中。

cookie工作原理

當客戶訪問某個網站時,在PHP中可以使用setcookie函數生成一個cookie,系統經處理把這個cookie發送到客戶端並保存在c:Documents and Settings用戶名\Cookies目錄下。cookie是HTTP標頭的一部分,因此setcookie函數必須在任何內容送到瀏覽器之前調用。這種限制與header()函數一樣。當客戶再次訪問該網站時,瀏覽器會自動把c:Documents and Settings用戶名\Cookies目錄下與該站點對應的cookie發送到伺服器,伺服器則把從客戶端傳來的cookie將自動地轉化成一個PHP變數。

通過$_COOKIE[‘xxx’]讀取客戶端發來的cookie。

創建 cookie

通過 setcookie() 函數來創建一個 cookie ,成功返回 TRUE ,否則返回 FALSE 。

語法:

bool setcookie( string name [, string value [, int expire [, string path [, string domain ]]]] )

參數說明:

name cookie 名稱

value 可選,cookie 值

expire 可選,過期時間,時間戳格式

path 可選,伺服器端有效路徑,/ 表示整個域名有效,默認為當前設置 cookie 時頁面的路徑

domain 可選,該 cookie 有效的域名

?php

setcookie(“username”, “nostop”, time()+3600); //設置了一個名稱為 username 的cookie,其值為 xiaoli ,並在1小時候後過期。如果時間也被省略,cookie 將會在會話結束後(一般是瀏覽器關閉)失效。

?

cookie 會以一定格式被存儲在用戶計算機特定位置。

?php

setcookie(“username”, “nostop”, time()+3600, “/”, “.example.com”); //在example.com 域名的 / 路徑下該 cookie 都有效(即全站有效)。

?

讀取 cookie

PHP 內置了 $_COOKIE 變數以訪問設置的 cookie 值。

例子:

?php

echo $_COOKIE[“username”]; //nostop

?

銷毀 cookie

可以通過設置 cookie 過期時間為以前的時間點來銷毀一個 cookie :

?php

setcookie(“username”, “”, time()-3600);

?

cookie注意事項

1、SetCookie()之前不能有任何html輸出,就是空格,空白行都不行。

2、SetCookie()後,你在當前頁調用echo $_COOKIE[“name”]不會有輸出。必須刷新或到下一個頁面在過期之前才可以看到Cookie值。

3、由於 cookie 信息存儲於用戶的計算機中,那麼就有可能偽造或修改 cookie 從而造成 cookie 欺騙,一般可以對 cookie 的值進行加密來預防欺騙。讀取 cookie 的時候,對 cookie 解密即可。

4、Cookie是保存在客戶端的,用戶禁用了Cookie,你的Cookie自然也就沒作用啦!

?php

setcookie(‘username’,’nostop’,time()+3600); //創建cookie

if(isset($_COOKIE[“username”])){ //使用isset()函數檢測cookie變數是否已經被設置

echo “您好!”.$_COOKIE[“username”]; //您好!nostop 讀取cookie

}else{

echo “請登陸”;

}

?

原創文章,作者:GFJPB,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/331396.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
GFJPB的頭像GFJPB
上一篇 2025-01-16 15:46
下一篇 2025-01-16 15:46

相關推薦

  • phpcookie使用,PHPcookie

    本文目錄一覽: 1、php里的cookie怎樣使用才是正確的 2、php 如何使用cookie安全的保存登錄狀態sessionid 3、PHP中如何使用Cookie 4、php c…

    編程 2025-01-16
  • phpcookie失效,phpcookie使用

    本文目錄一覽: 1、我想問下我這個PHP,為什麼在這個頁面設置COOKIE是無效的,我試過在其他頁面設置一個cookie是正常的 2、php站點 session cookie 無法…

    編程 2025-01-14
  • phpcookie清除,php清空cookie

    本文目錄一覽: 1、PHP中如何刪除Cookie 2、PHP中cookie的清除 3、幾種清除cookie有效方法(js,asp,php) PHP中如何刪除Cookie bool …

    編程 2024-12-24
  • phpcookie傳值,PHPcookie

    本文目錄一覽: 1、如何使用PHP操作cookie 2、php 設置cookie並傳遞其它變數 3、求助PHP無法傳遞cookie的值 4、PHP CI框架中Cookie怎麼使用完…

    編程 2024-12-12
  • phpcookie存值,php中setcookie參數

    本文目錄一覽: 1、php怎麼用cookie存儲多維數組 2、php 將cookie的值寫入文件 3、php如何將一個數組保存在cookie裡面 php怎麼用cookie存儲多維數…

    編程 2024-11-29

發表回復

登錄後才能評論