2010-08-10 32 views
9

我正在爲iOS的網絡應用程序工作。當應用程序打開時,它會檢查用戶是否擁有存儲在其中的用戶電子郵件的cookie,然後讓用戶進入主頁或將用戶重定向到身份驗證頁面。iPhone網絡應用程序,不存儲cookie

使用Safari瀏覽器時,此功能非常完美。我遇到的問題僅在應用存儲在主屏幕上時發生。似乎主屏幕的web應用程序在用戶退出應用程序時將該cookie刪除。

任何關於強制應用程序存儲cookie的建議將不勝感激。

謝謝, 彼得

+0

我遇到了同樣的問題。你解決了嗎? – ablmf 2011-08-24 20:53:14

+0

使用會話存儲解決它。 – Peter 2011-08-25 20:37:21

+0

你可以顯示你的解決方法嗎?我有同樣的問題... – helle 2012-04-15 19:05:22

回答

0

存在對你可能想使用使cookie被創建從任何頁面只是對setcookie函數中的參數path

在服務器上的路徑其中的 cookie將可用。如果設置爲 '/',則Cookie將在整個域中可用 。如果設置爲 '/ foo /',則該cookie將僅在和/或域的所有子目錄(如 /foo/bar /)內可用的 。默認值爲 是當前目錄中的 的cookie被設定

所以嘗試加入'/'作爲第四個參數爲setcookie的功能,例如:

setcookie("TestCookie", $value, time()+3600, "/"); 
+0

我看不到在他的評論任何地方任何提及的PHP。只是想知道你從哪裏得到的。 – 2010-08-10 20:14:00

+0

這個問題被標記爲PHP – 2010-08-10 20:18:37

+0

感謝Asif, 感謝您的建議,cookie路徑已被設置爲'/'。還有其他建議嗎? 和海倫,對不起,不提....我使用PHP。 謝謝彼得 – Peter 2010-08-10 23:16:49

4

的原因它不是堅持圍繞是因爲超時參數沒有設置..如果它是空白或0,那麼當uiwebview關閉時cookie將被刪除。

所以你可以做其他海報建議..(「TestCookie」,$ value,time()+ 3600,「/」);

,但工作的原因是因爲超時值被設置

-1

的你是不是能夠得到會議在iPhone上,因爲cookie是禁用的。

請轉到Safari>設置>接受您的iPhone中的Cookie,並將其設置爲接受來自訪問。

然後,您將能夠在PHP中創建會話。

+0

Cookies未禁用 – Peter 2012-05-15 00:14:56