加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 如何在单击链接时设置会话变量

发布时间:2020-12-13 17:34:35 所属栏目:PHP教程 来源:网络整理
导读:我有以下问题…我想要设置一个会话变量,当点击一般的链接,如: a href="home" name="home"home/a 我的研究似乎指出,PHP不可能以这样一种方式来追踪点击事件来设置会话变量. 我相信有可能与Ajax,但如何?我的链接会是什么样的? 设置会话变量应如下所示: $_S
我有以下问题…我想要设置一个会话变量,当点击一般的链接,如:
<a href="home" name="home">home</a>

我的研究似乎指出,PHP不可能以这样一种方式来追踪点击事件来设置会话变量.

我相信有可能与Ajax,但如何?我的链接会是什么样的?
设置会话变量应如下所示:

$_SESSION['link'] = home;

简而言之:当单击HTML中的链接时,必须设置会话变量.
我该怎么办?

PS:我不太熟悉Ajax,但我会赶上.

编辑:链接将引用同一页面,我也想避免像“home.php?link = X”这样的网址.
如果不可能做任何其他方式,太糟糕了.但我希望有一个解决方案.
重要提示:链接的名称将为$_SESSION [‘link’]

session_start();
    if(isset($_SESSION['current'])){
         $_SESSION['oldlink']=$_SESSION['current'];
    }else{
         $_SESSION['oldlink']='no previous page';
    }
    $_SESSION['current']=$_SERVER['PHP_SELF'];

也许这是你要找的?
它会记住您来自的旧链接页面(在您的网站内).

将该片放在每页的顶部.

如果您想要“刷新证明”,您可以添加另一个支票:

if(isset($_SESSION['current']) && $_SESSION['current']!=$_SERVER['PHP_SELF'])

这将使页面不记得自己.

更新:几乎与@Brandon一样…
只要使用php变量,我知道这看起来像一个安全风险,但是当做正确的时候,它不是.

<a href="home.php?a=register">Register Now!</a>

PHP:

if(isset($_GET['a']) /*you can validate the link here*/){
    $_SESSION['link']=$_GET['a'];
 }

为甚么将GET存储在会话中?只是用它请告诉我为什么你不想使用GET. ?验证更安全.我也许可以帮你一个更好的脚本.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读