PHP $ _SESSION变量单页

时间:2013-06-11 15:18:18

标签: php session-variables

我正在尝试通过一些锚标记来更新会话变量,以跟踪要显示的信息。我目前正在使用$_GET个变量,但我想保留一个干净的地址栏,因为这是一个单页应用程序。我无法弄清楚的是如何更新会话变量并刷新页面并更新变量。

这是我能想到的唯一方法,但它没有像我预期的那样工作。

使用抓取click.php变量的$_GET文件并将其应用于会话变量并重定向回index.php文件。

的index.php

<a href="click.php?msv=PhotoCount" >Photo Count</a>

click.php

if ( !empty($_GET['msv']) ) {
  $msv = $_GET['msv'];
  $_SESSION['meta'] = $msv;
  header('Location: /');
}

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

你应该在index.phpclick.php的开头明确地启动php会话,就像这样..只有你的会话数据才会持久

<?php session_start(); ?>

如果您选择这样做,请考虑稍后使用此代码段删除会话数据

<?php session_destroy(); ?>

答案 1 :(得分:0)

将其添加到index.php的顶部:

<?php
  if(isset($_GET['msv']) && !empty($_GET['msv'])){
    session_start();
    $_SESSION['msv'] = $_GET['msv'];
  }
?>

并将链接的目标位置指向同一页面。所以,不需要第二页。

如果要同时使用这两个页面,请将链接的目标位置提供给第二页,并在if语句的末尾添加此行。

header('Location: /index.php');