2

ブラウザーを使用しているときにログイン状態を維持するために PHP セッションを使用していますが、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 ファイルから設定されます

サインイン.php

    if($count==1) {
        session_register("username");
        $_SESSION['logged']= $user;
        header("location: /?logged=1");
    } else {
        echo "Your Login Name or Password is invalid";
    }
4

3 に答える 3

1

LocalStorage は必要ないと確信しています。

セッション Cookie (ブラウザを閉じると削除される) ではなく、将来の有効期限を持つ Cookie を設定するだけです。

PHP セッションは定期的に削除されるため、おそらくこれには使用できません。代わりに、ログイン Cookie を自分で処理する必要があります。

于 2012-08-30T09:45:01.737 に答える
0

私は現在、正常に動作するLocalStorageを使用しています

于 2012-10-17T11:32:11.483 に答える
0

何が問題なのかわかりませんが、持続可能なローカルストレージが必要な場合は、iOS アプリケーションに近づいた後、ログインしているかどうかを確認してください。

次のようなフラグをユーザーのデフォルトに設定します。

  [[NSUserDefaults standardUserDefaults] setBool:TRUE forKey:@"isLogin"];

次に、アプリケーションの起動時にこの値を取得して、ログインしているかどうかを確認します。

 BOOL isLogin = [[NSUserDefaults standardUserDefaults] valueForKey:@"isLogin"];

それに応じて必要なことを実行します。

于 2012-08-30T10:16:20.683 に答える