當前位置:首頁 » 編程語言 » PHPCookies

PHPCookies

發布時間: 2023-08-15 13:53:21

㈠ 詳解php中cookie和session的區別及cookie和session用法小結

一、區別:

1、cookie數據存放在客戶的瀏覽器上,session數據放在伺服器上。

2、cookie不是很安全,別人可以分析存放在本地的COOKIE並進行COOKIE欺騙
考慮到安全應當使用session。

3、session會在一定時間內保存在伺服器上。當訪問增多,會比較佔用你伺服器的性能

考慮到減輕伺服器性能方面,應當使用COOKIE。

4、單個cookie保存的數據不能超過4K,很多瀏覽器都限制一個站點最多保存20個cookie。

5、所以個人建議:

將登陸信息等重要信息存放為SESSION

其他信息如果需要保留,可以放在COOKIE中

二、用法小結:

1、cookie:

1)如何創建 cookie?

setcookie() 函數用於設置 cookie。setcookie(name, value, expire, path, domain); //setcookie("user", "Alex Porter", time()+3600);

注釋:setcookie() 函數必須位於 <html> 標簽之前。

2)如何取回 Cookie 的值?

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

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

3)如何刪除 cookie?

當刪除 cookie 時,您應當使過期日期變更為過去的時間點。//setcookie("user", "", time()-3600);

2、session:

1)如何創建 session?

session_start() 函數啟動會話。

2)存儲 Session 變數

$_SESSION 變數賦值

isset() 函數檢測是否已設置

3)終結 Session

如果您希望刪除某些 session 數據,可以使用 unset() 或 session_destroy() 函數。注釋:session_destroy() 將重置 session,您將失去所有已存儲的 session 數據。

㈡ PHP的cookies的問題,如何設置關閉瀏覽器的時候就清空cookies

用setCookie,把時間清空或者設置為0就可以了。

setcookie(name,value,expire,path,domain,secure)

比如代碼:

setcookie("TestCookie",$value);

有時可能會報錯,把時間設置為0就好了。

setcookie("TestCookie",$value,0);

㈢ 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 setcookie() 函數向客戶端發送一個 HTTP cookie。cookie 是由伺服器發送到瀏覽器的變數。cookie 通常是伺服器嵌入到用戶計算機中的小文本文件。每當計算機通過瀏覽器請求一個頁面,就會發送這個 cookie。cookie 的名稱指定為相同名稱的變數。例如,如果被發送的 cookie 名為 "name",會自動創建名為 $user 的變數,包含 cookie 的值。
必須在任何其他輸出發送前對 cookie 進行賦值。如果成功,則該函數返回 true,否則返回 false。

setcookie(name, value, expire, path, domain, secure)
name 必需。規定 cookie 的名稱。
value 必需。規定 cookie 的值。
expire 可選。規定 cookie 的有效期。
path 可選。規定 cookie 的伺服器路徑。
domain 可選。規定 cookie 的域名。
secure 可選。規定是否通過安全的 HTTPS 連接來傳輸 cookie。
可以通過 $HTTP_COOKIE_VARS["user"] 或 $_COOKIE["user"] 來訪問名為 "user" 的 cookie 的值。在發送 cookie 時,cookie 的值會自動進行 URL 編碼。接收時會進行 URL 解碼。如果不需要這樣,可以使用 setrawcookie() 代替。

程序1:
設置並發送 cookie:
1 <?php
2 $value = "my cookie value";
3 // 發送一個簡單的 cookie
4 setcookie("TestCookie",$value);
5 ?>
01 <html>
02 <body>
03 ...
04 ...
05 <?php
06 $value = "my cookie value";
07 // 發送一個 24 小時候過期的 cookie
08 setcookie("TestCookie",$value, time()+3600*24);
09 ?>
10 <html>
11 <body>

程序2:
檢索 cookie 值的不同方法:
01 <html>
02 <body>
03 <?php
04 // 輸出個別的 cookie
05 echo $_COOKIE["TestCookie"];
06 echo "<br />";
07 echo $HTTP_COOKIE_VARS["TestCookie"];
08 echo "<br />";
09 // 輸出所有 cookie
10 print_r($_COOKIE);
11 ?>
12 </body>
13 </html>
程序輸出:
1 my cookie value
2 my cookie value
3 Array ([TestCookie] => my cookie value)

程序3:
通過把失效日期設置為過去的日期/時間,刪除一個 cookie:
1 <?php
2 // 把失效日期設置為一小時前
3 setcookie ("TestCookie", "", time() - 3600);
4 ?>

程序4:
創建一個數組 cookie:
01 <?php
02 setcookie("cookie[three]","cookiethree");
03 setcookie("cookie[two]","cookietwo");
04 setcookie("cookie[one]","cookieone");
05 // 輸出 cookie (在重載頁面後)
06 if (isset($_COOKIE["cookie"]))
07 {
08 foreach ($_COOKIE["cookie"] as $name => $value)
09 {
10 echo "$name : $value <br />";
11 }
12 }
13 ?>
程序輸出:
1 three : cookiethree
2 two : cookietwo
3 one : cookieone

程序5:
view sourceprint?
1 /**
2 * 01.cookie設置
3 * */
4 function ssetcookie($var, $value, $life=0) {
5 global $_SGLOBAL, $_SC, $_SERVER;
6 setcookie($_SC['cookiepre'].$var, $value, $life?($_SGLOBAL['timestamp']+$life):0, $_SC['cookiepath'],$_SC['cookiedomain'], $_SERVER['SERVER_PORT']==443?1:0);
7 }

㈤ php設置好cookie如何在html中讀出cookie

PHP生成cookie,HTML頁面使用javaScript即可讀取。操作示例如下:

<?php
//首先php生成cookie;
//demo.php
//開啟session
session_start();
$name="";
setcookie("cname",$name,time()+3600,"/");
?>
2.HTML頁面讀取;
//index.html
<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""

<htmlxmlns="

<head>
<metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/>
<title>JS讀取cookie示例</title>
<style>
body{font-size:14px;line-height:22px;font-family:"微軟雅黑",Verdana,Geneva,sans-serif;}
input,textarea{font-family:"微軟雅黑",Verdana,Geneva,sans-serif;padding:3px;font-size:12px;}
h3{clear:both;}
li{padding:2px0;list-style:none;}
</style>
<scripttype="text/javascript">
functionget_cookie(cookieName){
//判斷cookie是否存在
if(document.cookie.length>0){
pos=document.cookie.indexOf(cookieName+"=")
if(pos!=-1){
pos=pos+cookieName.length+1
last=document.cookie.indexOf(";",pos)
if(last==-1)last=document.cookie.length
returnunescape(document.cookie.substring(pos,last))
}
}
return"cookie不存在!";
}
</script>
</head>
<body>
<inputtype="button"value="獲取cookie"onclick="alert(get_cookie('cname'));"/>
</body>
</html>
熱點內容
微信存儲到sd卡 發布:2025-03-18 01:34:29 瀏覽:968
eclipse的自動編譯 發布:2025-03-18 01:34:29 瀏覽:367
可以上傳視頻網站 發布:2025-03-18 01:29:17 瀏覽:932
mysql密碼忘記了怎麼 發布:2025-03-18 01:23:00 瀏覽:858
java與oracle 發布:2025-03-18 01:18:05 瀏覽:705
怎麼給win7電腦文件加密 發布:2025-03-18 01:10:41 瀏覽:989
python生成隨機數 發布:2025-03-18 01:10:40 瀏覽:95
手機存儲卡怎麼設置 發布:2025-03-18 01:04:26 瀏覽:213
背演算法好處 發布:2025-03-18 01:02:18 瀏覽:57
win7添加刪除在哪個文件夾 發布:2025-03-18 01:02:13 瀏覽:705