0
此問題僅在IE中。 Mozilla和Chrome工作正常,定位我出錯的地方非常困難。
我有一個for循環建立多層次$ _SESSION VAR例如:
$seq = 1;
for($d=1; $d<=10; $d++){
if($_POST["COMPANY_$d"] && $_POST["PHONE_$d"]){
$_SESSION['c'][$seq]["COMPANY"] = $_POST["COMPANY_$d"];
$_SESSION['c'][$seq]["PHONE"] = $_POST["PHONE_$d"];
if($_POST["COUNTRY_$d"] == 'Canada'){
$_SESSION['c'][$seq]["STATE"] = $_POST["STATE_$d"];
}else{
$_SESSION['c'][$seq]["STATE"] = $_POST["STATE_2_$d"];
}
$_SESSION['c'][$seq]["COUNTRY"] = $_POST["COUNTRY_$d"];
$_SESSION['c'][$seq]["ADDY1"] = $_POST["ADDY1_$d"];
$_SESSION['c'][$seq]["ADDY2"] = $_POST["ADDY2_$d"];
$_SESSION['c'][$seq]["CITY"] = $_POST["CITY_$d"];
$_SESSION['c'][$seq]["ZIP"] = $_POST["ZIP_$d"];
$seq++;
}//end declare var in $_SESSION
}//end for
當我在Mozilla的print_r($ _ SESSION)我得到正確的價值觀,但在IE中我得到的是:
Array
(
[c] => 11
)
我不確定11是否來自我的循環或其他代碼的地方。我已經花了3個小時,用細梳梳子通過代碼,找不到任何干擾。這在Mozilla的作品,與IE瀏覽器有什麼關係?我的問題是什麼?
您的php配置爲使用cookie來存儲'$ _SESSION'嗎?默認情況下,它們存儲在內部,永遠不會離開網絡服務器。 – J0HN
這很奇怪。會話不應受瀏覽器的影響,它們在服務器端進行管理。嘗試清除您的IE緩存和Cookie列表。在Firefox和Chrome上也一樣。 –