2013-01-21 18 views
0

我建立了一個表單來逐步提交數據。在步驟之間的數據從步驟1繼續到步驟2等等。這些數據是必要的。 50%的訪問者使用iframe從不同的網站訪問表單。iFrames Iexplorer不會寫或讀會話(或cookie)

最初數據存儲在cookie中。除了iexplorer之外,幾乎所有的瀏覽器都可以工作。我和P3P一起玩了幾天,但放棄了。沒有任何變化。然後我讀了會議沒有這個問題。所以我將整個登錄系統更改爲會話。

現在我正在測試系統,並且仍然每個瀏覽器都使用iframe中的表單工作,除了粗略的Iexplorer。

有什麼我可以做的嗎?

更新:服務器位於我的時區時處於另一個時區。改變時區應該有所幫助,但是沒有。

回答

1

花了一些時間,但它解決了。在這裏,我們去:

  1. 有時時區是不正確的。如果差異超過一個小時,Iexplorer會話將被徹底銷燬。您可以手動更改時區或請您的webhoster這樣做。在PHP中,你可以嘗試:date_default_timezone_set(string $timezone_identifier)

  2. 除了1,有時不可能在一個小時內停留。如果是這樣,您可以更改會話緩存過期設置。在PHP中它是<?php session_cache_expire(1440); ?>

  3. iframe中的IE顯然有時會出現下劃線的問題。當使用下劃線時,IE拒絕cookie。所以不要使用它們或確保IE不會以這種方式存儲會話。

  4. 使用P3P(檢查它是否合法允許,等等!)。在PHP中,你可以使用header('P3P: CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"');

這就是我想和他們一起工作(不是自己的)。