当我使用浏览器时,我一直在使用PHP Session保持登录,但是当我将Web应用程序保存到主屏幕并启动应用程序时,每次打开应用程序时都必须登录。有办法保持登录状态吗?
当我查看本地存储时,是否有人可以提供代码示例或指向正确的方向,并且在我登录时不确定如何设置LocalStorage值以及如何检查该值是否存在。
注意:我目前使用PHP登录
由于
的index.php
<script type="text/javascript">
<?php echo $_SESSION['logged'];?>
<?php if ($_GET['logged'] == 1){?>
$.cookie( 'loggedin', '1', { expires: 7, path: '/' } );
<?php }?>
if( $.cookie('loggedin') == '1' ) {
<?php $userlog = true?>
$.cookie( 'loggedin', '1', { expires: 7, path: '/' } );
} else {
<?php $userlog = false?>
$.cookie( 'loggedin', '0', { expires: 7, path: '/' } );
}
</script>
$ _ SESSION ['logged']是从sign-in.php文件
设置的登录-in.php
if($count==1) {
session_register("username");
$_SESSION['logged']= $user;
header("location: /?logged=1");
} else {
echo "Your Login Name or Password is invalid";
}
答案 0 :(得分:1)
我很确定你不需要LocalStorage。
只需在将来设置一个过期的cookie,而不是会话cookie(在浏览器关闭时删除)。
您可能无法使用PHP会话,因为这些会话会被定期删除。相反,你必须自己处理登录cookie。
答案 1 :(得分:0)
我不确定问题是什么,但如果可持续的本地存储是您想要的,要检查您是否已登录,在iOS应用程序关闭之后,它就是:
将标志设置为用户默认值,例如:
[[NSUserDefaults standardUserDefaults] setBool:TRUE forKey:@"isLogin"];
然后在应用程序启动时检索此值以检查您是否已登录:
BOOL isLogin = [[NSUserDefaults standardUserDefaults] valueForKey:@"isLogin"];
现在执行相应的操作。
答案 2 :(得分:0)
我目前使用的LocalStorage工作正常