0

このコマンドを使用して、パラメーターをサーバーに投稿しています。

response = CustomHttpClient.executeHttpPost("http://192.168.1.102/liu/login.php", postParameters);

サーバーからのログインに成功すると、Android アプリケーションは webview で members.php ページを要求するように設定されていますが、これが発生すると、再度ログインするためにログイン ページにリダイレクトされます。これは、セッションが終了したことを意味します。どこかにドロップしたので、2 つのリクエスト間のセッションを維持するにはどうすればよいですか?

サーバー側のlogin.phpのコードは次のとおりです。

 if($numrow!=0)
{
    while($row = mysql_fetch_assoc($query))
    {
        $db_username = $row['username'];
        $db_password = $row['password'];
    }

    if($username==$db_username&&$password==$db_password)
    {

        $_SESSION['username']=$db_username;
        header("Location: members.php");
        members area</a>";


    }

members.php:

if($_SESSION['username'])
 {
echo "1";
echo "the logged in session is :". $_SESSION['username'];
echo " You are logged in as: ".$_SESSION['username'];

echo "<p><a href='logout.php'>Click here to logout</a>";
  }

このコードは、PC ブラウザーからログインすると機能しますが、Android アプリケーションから情報を送信し、正常な応答を取得してから members.php ページを要求すると、ログインに戻ります。

4

2 に答える 2

2

このリンクを参照できます: Android でのセッションの維持 (アプリケーションはサーバー側で認証されたままになります)

Android でセッションを管理する方法について説明しました。

これから助けを借りてみてください。

于 2012-05-29T17:46:07.793 に答える
0

GET パラメータを使用する必要があります。PHPのフォーマットは

myscript.php?session_name=SESSION_ID

ただし、これは PHP サーバーで有効になっていない可能性があることに注意してください。セッション ID の受け渡しに関するドキュメント

于 2012-05-27T22:45:57.063 に答える