程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> PHP setcookie指定domain參數後,在IE下設置cookie失效的解決方法

PHP setcookie指定domain參數後,在IE下設置cookie失效的解決方法

編輯:關於PHP編程

下面的代碼:在chrome和firefox下可以生成三個cookie:
cookie[one]、cookie[two]、cookie[three]
在IE下,只能生成cookie[one]、cookie[two]兩個cookie,第三個因為指定了”.65.la”,導致cookie[three]生成失敗。
復制代碼 代碼如下:
<?php
setcookie(“cookie[one]“, “cookieone”,time()+36000,”/”);
setcookie(“cookie[two]“, “cookietwo”,time()+36000,”/”);
setcookie(“cookie[three]“, “cookiethree”, time()+36000,”/”,”.65.la”);
// 頁面重新
if (isset($_COOKIE["cookie"])) {
foreach ($_COOKIE["cookie"] as $name => $value) {
$name = htmlspecialchars($name);
$value = htmlspecialchars($value);
echo “$name : $value <br />\n”;
}
}
?>

多次實驗之後,確認IE認為”.65.la”這種形式的域名參數是不規范的。如果要cookie在所有子域名通用的話,可以通過全局變量來變通的實現。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved