引用一个调用特定页面的页面

时间:2012-03-23 22:03:38

标签: php mysql authentication login referer

我有一个索引页面,其中包含三个链接。当我单击第一个链接(下面示例中的pageType1)时,运行pageType1.php,首先检查用户是否通过cookie登录。如果不是,则将用户重定向到登录页面。当用户正确地在登录页面上提交登录名和密码信息时,我想在pageType1.php上显示信息

FILE:index.php

<a href="pageType1.php" target="_blank">PageType1</a>
<a href="pageType2.php" target="_blank">PageType2</a>
<a href="pageType3.php" target="_blank">PageType3</a>

FILE:pageType1.php

<?php
include"auth/auth_check_header.php"; 
print("pageType1 contents");
?>

FILE:pageType2.php

<?php
include"auth/auth_check_header.php"; 
print("pageType2 contents");
?>

FILE:pageType3.php

<?php
include"auth/auth_check_header.php"; 
print("pageType3 contents");
?>

FILE:auth / auth_check_header.php

$successful_login_url = ??????   //How to track this value. 

if (!cookie_enabled)
    {
    //login page
    header("location:$successful_login_url");
    }

我的问题是如何在auth / auth_check_header.php中跟踪“$ successful_login_url”值(或者我把这个值作为此变量的值):

注意:我尝试将$ _SESSION [“referer”]作为“$ successful_login_url”的值,但在成功登录后显示index.php。 提前致谢

2 个答案:

答案 0 :(得分:0)

您可以将页面URL作为GET变量(查询字符串)传入并基于此重定向,或者如果您想获取包含的页面,可以使用“PHP_SELF”并将其存储在变量中并使用它重定向回来:

$_SERVER['PHP_SELF']

http://php.net/manual/pt_BR/reserved.variables.server.php

答案 1 :(得分:0)

1)用户尝试访问pageType1.php

2)用户被重定向到login.php,其中包含带有隐藏字段的表单:

<input type="hidden" name="redirectTo" value="<?php echo $_SESSION["HTTP_REFERER"]?>" />

3)用户输入登录名和成功通过身份验证后:

$redirectTo = $_POST['redirectTo']

4)如果$redirectTo不为空,则重定向,否则重定向到默认页面