【发布时间】:2012-06-02 09:53:25
【问题描述】:
我正在使用此命令将参数发布到我的服务器:
response = CustomHttpClient.executeHttpPost("http://192.168.1.102/liu/login.php", postParameters);
当我从服务器成功登录时,我的 Android 应用程序设置为请求 webview 中的 members.php 页面,但是当这种情况发生时,我被重定向到登录页面以再次登录,这意味着session 已经在某处被丢弃了,那么如何维护两个请求之间的 session 呢?
这是服务器端 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>";
}
现在,当我从我的电脑浏览器登录时,此代码可以工作,但是当我从 Android 应用程序发送信息并获得成功回复然后请求 members.php 页面时,它会将我带回登录。
【问题讨论】:
-
会话参数驻留在服务器上。您不必通过它们来维护打开的会话。如果会话已关闭,则该会话 ID 将无效。
标签: php android http session post