Ссылаясь на страницу, которая называется конкретной страницей - PullRequest
0 голосов
/ 24 марта 2012

У меня есть индексная страница с тремя ссылками. Когда я нажимаю первую ссылку (pageType1 в приведенном ниже примере), запускается pageType1.php, которая сначала проверяет, вошел ли пользователь через cookie. Если это не так, перенаправьте пользователя на страницу входа. Когда пользователь отправляет информацию о логине и пароле на странице входа в систему правильно, я хочу отобразить информацию на странице pageType1.php

ФАЙЛ: 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>

ФАЙЛ: pageType1.php

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

ФАЙЛ: pageType2.php

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

ФАЙЛ: pageType3.php

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

ФАЙЛ: auth / auth_check_header.php

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

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

Мой вопрос заключается в том, как отследить значение "$ success_login_url" (или что я должен указать в качестве значения этой переменной) в auth / auth_check_header.php

Примечание: я попытался поместить $ _SESSION ["referer"] в качестве значения "$ success_login_url", но он показывает index.php после успешного входа в систему. Заранее спасибо

Ответы [ 2 ]

0 голосов
/ 24 марта 2012

1) Пользователь пытается получить доступ к pageType1.php

2) Пользователь перенаправляется на login.php, который содержит форму со скрытым полем:

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

3) Пользователь вводит логин и при успешной аутентификации:

$redirectTo = $_POST['redirectTo']

4) Если $redirectTo не пусто, то перенаправить, иначе перенаправить на страницу по умолчанию

0 голосов
/ 24 марта 2012

Вы можете передать URL-адрес страницы как переменную GET (строку запроса) и перенаправить на основе этого или, если вы хотите получить страницу, на которой находится включение, вы можете использовать 'PHP_SELF', сохранить ее в переменной и использоватьэто перенаправить обратно:

$_SERVER['PHP_SELF']

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

...