首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在PHP中登录后转到同一页面

如何在PHP中登录后转到同一页面
EN

Stack Overflow用户
提问于 2010-03-28 14:56:22
回答 4查看 41.9K关注 0票数 19

例如,

第1步:

我在未登录的情况下浏览页面,登录前的最后一个页面是beforeLogin.php

第2步:

现在我的问题是,当我登录时,我会重定向到index.php页面。相反,我应该被重定向到我浏览过的最后一个页面。

也就是说,上面的示例应该重定向到beforeLogin.php

应该如何做到这一点。

任何帮助都是值得欣赏的。

提前感谢

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-03-28 15:08:27

您需要一种方法来跟踪访问过的web页面,以便可以向后引用用户浏览到的最后一个页面。

当我想到跨多个页面跟踪用户会话时,我和其他所有PHP程序员一样,想到了使用sessions

一种可能的方法是将访问的链接存储到会话变量中,然后当用户到达login.php页面(要登录的页面)时,提供会话变量给出的到$urlheader重定向。

注意:以下代码片段尚未经过测试或编译。

您可以将此代码粘贴到您网站上的所有页面中:

<?php
session_start(); // starts the session
$_SESSION['url'] = $_SERVER['REQUEST_URI']; // i.e. "about.php"

它利用$_SERVER变量返回使用$_SERVER['REQUEST_URI']访问的当前页面的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.
票数 37
EN

Stack Overflow用户

发布于 2010-03-28 16:04:12

到目前为止,最简单的解决方案是:

<input type="hidden" name="redirurl" value="<? echo $_SERVER['HTTP_REFERER']; ?>" />

然后在他们登录后重定向到该地址。

但是,只有在每个页面上都有一个登录框时,这才是好的。我个人这样做,我发现它工作得很好。

票数 6
EN

Stack Overflow用户

发布于 2010-03-28 15:23:46

您可以使登录表单操作指向当前页面。这很简单明了

比方说,你的页面看起来像

<?
include "auth.php"; // you need it anyway, as you want to control user's auth
//the rest of the page;
?>
<form method="POST">
login form
</form>
<?
//the rest of the page;
if (!empty($_SESSION['user_id'])) echo "Welcome registered user!";
?>

auth.php会负责登录检查,然后重定向到当前页面并不是什么大问题

<?
if (isset($_REQUEST[session_name()])) session_start();
if (isset($_POST['auth_name'])) {
  //password checking
  if (pass ok) {
    session_start();
    $_SESSION['user_id'] = $row['id'];
  }
  header("Location: http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']);
  exit;
}

像这样的东西不需要额外的会话。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2532141

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档