如何重定向用户到他们的id特定的url /登陆页面后,他们登录


How to redirect the users to their id specific urls/landing pages after they log in?

如何在用户登录后将其重定向到id特定的url/登陆页面?重定向url的查询字符串应该显示与其存储在Mysql数据库中的id(主键)相关联的值。

例如,

第1、2、3、4个用户对应的"id"值分别为1、2、3 &4

用户成功登录后,登录页面/登陆页面应分别如下所示:

www.anysite.com/anydirectory/user.php ? id = 1

www.anysite.com/anydirectory/user.php ? id = 2

www.anysite.com/anydirectory/user.php ? id = 3

www.anysite.com/anydirectory/user.php ? id = 4

*日志脚本的日志会话如下:*

//这个设置会话和日志用户* *

session_start();

//防止会话固定攻击

   session_regenerate_id (true); 

//设置会话中的变量

$_SESSION['user_id']= $id;  
    $_SESSION['user_name'] = $full_name;
    $_SESSION['user_level'] = $user_level;
    $_SESSION['HTTP_USER_AGENT'] = md5($_SERVER['HTTP_USER_AGENT']);
    **//update the timestamp and key for cookie**
    $stamp = time();
    $ckey = GenKey();
    mysql_query("update users set `ctime`='$stamp', `ckey` = '$ckey' where id='$id'") or die(mysql_error());

//设置cookie

  if(isset($_POST['remember'])){
              setcookie("user_id", $_SESSION['user_id'], time()+60*60*24*COOKIE_TIME_OUT, "/");
              setcookie("user_key", sha1($ckey), time()+60*60*24*COOKIE_TIME_OUT, "/");
              setcookie("user_name",$_SESSION['user_name'], time()+60*60*24*COOKIE_TIME_OUT, "/");
               }
               header('Location: user.php');
     }
    }
    else
    {
    //$msg = urlencode("Invalid Login. Please try again with correct user email and password. ");
    $err[] = "Invalid Username Or Password.";

我应该用什么头来重定向用户?此外,如何创建同样目的的登陆页。

只需将您的$_SESSION的用户id附加到您要重定向到的URL。

header('Location: user.php?id=' . $_SESSION['user_id']);

在检查是否成功登录时,在查询中返回用户id。下面是一些快速伪代码:

  • 在查询中:Select user_id where user_name = ?和密码= ?
  • 如果结果
  • 。count = 1,然后将user_id存储为$user_id
  • 重定向到"www.anysite.com/anydirectory/user.php?id="美元User_Id

您想像这样重定向吗? -

www.anysite.com/anydirectory/user.php ? id = 1

则只做

header("Location: user.php?id=".$userId);