установить страницу назначения в URL - PullRequest
0 голосов
/ 24 января 2011

У меня есть форма. когда пользователь нажимает на ссылку в форме, я хочу перенаправить его на страницу входа в систему, и как только он войдет в систему, он должен быть перенаправлен обратно на страницу формы, а не на любую другую страницу.

Как мне добиться этого перенаправления. Есть ли способ, указав адрес назначения?

Ответы [ 3 ]

1 голос
/ 25 января 2011

у вас есть 2 скрипта:

Скрипт A с формой входа:

    <form id="someId" action="login-action.php?redirect=<?php print(urlencode('http://'.$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'])); ?>" method="post">

В вашем скрипте B вы проверяете ключ перенаправления в массиве GET.Если ключ существует, вы используете его для перенаправления скрипта:

<?php

if(isset($_GET['redirect'])){

    header('location:'.urldecode($_GET['redirect']));
}
0 голосов
/ 24 января 2011

В коде, который перенаправляет на страницу входа в систему, возьмите URL текущего запроса (с $ _SERVER ['REQUEST_URI']), urlencode его (используя функцию urlencode с соответствующим названием) и добавьте его к URL, который вы перенаправляете какпеременная строки запроса (скажем, что-то вроде returnurl).

Затем на странице входа в систему проверьте, присутствует ли returnurl в строке запроса, и перенаправьте ее, если она есть.

Iне слишком хорошо знаю PHP, но это должно привести вас в правильном направлении.

0 голосов
/ 24 января 2011

Вы можете использовать header(); для перенаправления браузера. Вот быстрый сценарий:

<?php

if (md5($_POST['password']) == $server_password) // You are hashing, right ;)
{
  header('location:www.example.com');
}

?>

Удачи.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...