如何在php登录后将用户重定向到特定链接

时间:2015-11-04 05:18:07

标签: javascript php html

我想知道如何在登录php后将用户重定向到特定链接 例如,在电子商务网站中,如果用户点击添加到购物车按钮,如果该用户未登录,则用户将被重定向到登录页面,登录后用户将被重定向到请求页面的购物车页面 所以,我想知道如何为此编码。

if(!empty($_SESSION['username']))
{
        $url=' .php';//here i want dynamic link which is requested page link when user tries to access 
}
else
{
        $url='login.php';
}

5 个答案:

答案 0 :(得分:1)

首先检查用户是否登录

if(isset($_SESSION['username'])){
$url='cart.php';
}else{
$url='login.php';
}
<a href="<?php echo $url; ?>">add to cart</a>

答案 1 :(得分:0)

您必须传递变量以供参考,以了解您将来自哪个页面。

您必须使用header()

session_start();// beginning of your file.
if(user is logged in) {
     start checking for conditions here.
     if($_GET['from'] == "checkout"
          $file="checkout.php";
     else
          $file="index.php";

     header("Location: $file");// file to which you want to redirect after login.
} else {
     // redirect to login page.
}

您可以从您到达此页面的位置传递,然后检查用户是否已登录,然后决定重定向的位置。

答案 2 :(得分:0)

对于你来说,首先使用谷歌会比把它输入StackOverflow并等待监控响应更快,但是谁会说。也许您的浏览器已在此页面上打开,并且您正在使用旧的拨号调制解调器,因此加载新的非缓存内容非常慢。

How to make a redirect in PHP?

答案 3 :(得分:0)

你可以尝试这个:

header('Location: http://www.example.com/');

在这里,您可以找到免费图书的有用链接:https://stackoverflow.com/tags/php/info

答案 4 :(得分:0)

登录表单

<form action="loginchk.php" method="post">
      <input type="text" name="unm" id="unm" />
      <input type="password" name="pwd" id="pwd" />
      <input type="hidden" name="redirect_url" value="<?php echo basename($_SERVER['PHP_SELF']); ?>" />
      <input type="submit" value="Login" />
</form>

loginchk.php

<?php 
    if(!empty($_POST)){
        extract($_POST);

        //sql query

        if(//true condition){
              header("location:".$redirect_url);
        } else{
              header("location:login.php");
        }
    }
?>