Fer*_*ero 20 php redirect login
例如,
步骤1:
我在没有登录的情况下浏览页面,登录前的最后一页是beforeLogin.php
第2步:
现在我的问题是当我登录时,我正在重定向到index.php页面.相反,我应该被重定向到我浏览过的最后一页.
那是从上面的例子应该重定向到beforeLogin.php
应该如何做到这一点.
任何帮助都会很明显.
提前致谢
Ant*_*ney 37
您需要一种方法来跟踪所访问的网页,以便您可以反向引用用户浏览的最后一页.
当我想到跨多个页面跟踪用户的会话时,我和其他PHP程序员一样,想到使用会话.
一种可能的方法是将访问的链接存储到会话变量中,然后当用户到达login.php页面时(登录的页面)提供由会话变量给出的header重定向$url.
您可以将此代码粘贴到您网站上的所有网页中:
<?php
session_start(); // starts the session
$_SESSION['url'] = $_SERVER['REQUEST_URI']; // i.e. "about.php"
Run Code Online (Sandbox Code Playgroud)
这利用$_SERVER变量返回使用的当前页面的URI$_SERVER['REQUEST_URI']
然后为登录页面帮助进一步演示:
<?php
session_start(); // needed for sessions.
if(isset($_SESSION['url']))
$url = $_SESSION['url']; // holds url for last page visited.
else
$url = "index.php"; // default page for
header("Location: http://example.com/$url"); // perform correct redirect.
Run Code Online (Sandbox Code Playgroud)
迄今为止最简单的解决方案就是:
<hidden name="redirurl" value="<? echo $_SERVER['HTTP_REFERER']; ?>" />
Run Code Online (Sandbox Code Playgroud)
然后在他们登录后重定向到该地址.
但是,如果您在每个页面上都有一个登录框,这只会很好.我亲自做,我觉得它很有效.