我的SESSIONS有问题,在第一个页面上,用户单击锚,然后如果用户登录,将被重定向,没有问题,但如果没有,他将首先通过登录页面,但当用户到达登录页面时,变量会丢失。(登录页面出现在重定向页面之后)。所以我用$_GET参数保存了SESSIONS。
如何保留当前SESSIONS以在登录后重定向用户?
谢谢!
已编辑
页面:retailer.php(此页面是其触发参数的位置)
<a href="/go2store.php?rid=<?php echo $row['slug_title']; ?>&c=<?php echo $row_coupons['coupon_id']; ?>" onclick="javascript:window.location.href='<?php echo $row_coupons['logout_url']; ?>';" target="_blank">
页面:go2store.php(这个页面是我保存SESSION的地方)
$_SESSION["myCupon"] = "/go2store.php?rid=".$_GET['rid']."&c=".$_GET['c'];
Page:redirect.php(该页面检查用户是否登录,如果是,则重定向到SESSION上的URL,如果不是,则发送到login.php)
页面:login.php(这里我有这个在代码的顶部)
session_start();
$_SESSION["myCupon"] = "/go2store.php?rid=".$_POST['rid']."&c=".$_POST['c'];
但是它是空的,在redirect.php页面之后不返回任何值。
正如用户在评论中所指出的,您需要包括:
session_start();
在每个页面的顶部跨页面携带会话变量,否则它将无法识别您最初设置的变量。
我们不知道您是如何组织代码的,但这需要在潜在登录之前和之后都存在。
您可以在登录前轻松设置/获取$_SESSION
变量,或者在登录时从可能在尚未验证的页面中使用的其他变量中设置/获取。