iPhone网络应用程序,不存储cookie

时间:2010-08-10 19:54:17

标签: php iphone session cookies

我正在开发适用于iOS的网络应用。当应用程序打开时,它会检查用户是否有一个存储有用户电子邮件的cookie,然后让用户进入主页,或者将用户重定向到身份验证页面。

使用safari时效果很好。我遇到的问题仅在应用程序存储在主屏幕上时才会发生。似乎主屏幕Web应用程序在用户退出应用程序时删除了cookie。

强制应用程序存储该cookie的任何建议都会非常感激。

谢谢, 彼得

3 个答案:

答案 0 :(得分:4)

它没有留下的原因是因为没有设置超时参数..如果它是空白或0,那么当uiwebview关闭时,cookie将被删除..

所以你可以像其他海报建议那样做..

setcookie(“TestCookie”,$ value,time()+ 3600,“/”);

,但有效的原因是因为设置了超时值

答案 1 :(得分:0)

您可能希望使用setcookie函数的参数path,以便从任何页面创建Cookie:

  

服务器上的路径   cookie将可用。如果设置为   '/',cookie将可用   在整个域内。如果设置为   '/ foo /',cookie只会是   在/ foo /目录中可用   和所有子目录,如   / foo / bar /域名。默认值   是当前目录   正在设置cookie。

因此,尝试将'/'添加为setcookie函数的第四个参数,例如:

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

答案 2 :(得分:-1)

您无法在iPhone上获取会话,因为cookie已被禁用。

请转到Safari>设置>在iPhone中接受Cookie并将其设置为接受来自Visited。

然后您就可以用PHP创建会话了。