0

ログイン後にユーザーを ID 固有の URL/ランディング ページにリダイレクトする方法は? リダイレクトされた URL のクエリ文字列には、Mysql データベースに保存されている ID (主キー) に関連付けられた値が表示されます。

例えば、

1 番目、2 番目、3 番目、4 番目のユーザーに対応する「id」の値は、1、2、3、4 です。

ユーザーが正常にログインすると、ログに記録されたページ/ランディング ページはそれぞれ次の URL のようになります。

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());

//クッキーをセット

  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.";

ユーザーをそのようにリダイレクトするには、どのヘッダーを使用する必要がありますか? また、同じ目的のランディングページの作り方。

どんな助けでも大歓迎です。

4

3 に答える 3

1

$_SESSIONリダイレクト先の URL に、あなたのユーザー ID を追加するだけです。

header('Location: user.php?id=' . $_SESSION['user_id']);
于 2011-12-14T12:38:33.970 に答える
0

このようにリダイレクトしますか:-

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

その後、

header("Location: user.php?id=".$userId);
于 2011-12-14T12:44:17.263 に答える
0

ログインの成功を確認する場合は、クエリでユーザーの ID を返します。簡単な疑似コードを次に示します。

  • クエリ: user_id を選択します。ここで、user_name = ? とパスワード=?
  • results.count = 1 の場合、user_id を $user_id として保存します
  • 「www.anysite.com/anydirectory/user.php?id=」にリダイレクトします。$User_Id
于 2011-12-14T12:38:19.150 に答える