我想知道如何在登录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';
}
答案 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并等待监控响应更快,但是谁会说。也许您的浏览器已在此页面上打开,并且您正在使用旧的拨号调制解调器,因此加载新的非缓存内容非常慢。
答案 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");
}
}
?>