【发布时间】:2010-06-24 15:39:28
【问题描述】:
作为我尝试创建与其他开发人员的现有 php 应用程序具有相同外观和感觉的 ASP.net 的一部分。 (有关它的更多信息,您可以在这里阅读:How to share sessions between PHP and ASP.net application?) 我正在我的 ASP.net 和 PHP 应用程序之间共享用户登录状态。
我有像 signin.aspx?foo=asdhhjkasd (ASP.net) 和 signin.php?foo=asdhhjkasd 这样的链接,它们告诉其他应用程序应该使用哪些用户凭据来验证用户身份。
现在我被 PHP 会话管理困住了:现有的 php 应用程序由一个 index.php 组成,其中包括几个(100 个中的一些)其他 php 文件并执行其功能。有一个会话管理(session_start() 等)。
我想要做的是调用带有一些参数的页面调用signin.php。根据之前是否登录过php应用程序,我只想重定向到index.php,但我无法获取会话变量。
我的 signin.php 必须是什么样子才能访问 index.php 中使用的会话变量。这是我迄今为止尝试过的:
<?php
// session_start(); tried it with or without it
if($_SESSION['user_id'] != "")
{
header('Location:index.php');
}
else
{
echo "no redirect";
}
?>
我总是打印“无重定向”。
或者我的想法是错误的,当不涉及发布/获取操作时,无法从 php 中的另一个页面访问会话变量?
也许我应该说我的 PHP 能力有点有限。
【问题讨论】: