删除 URL 参数后保持 PHP 会话活动
Keep PHP session active after removing the URL parameter
我正在尝试获取 URL 参数的值并使用 PHP 会话将其保存到 JS 变量。
我的URL:domain.com/?id=MYID
我的PHP代码:
session_start();
$_SESSION['id'] = $_GET['id'];
然后我将它保存在 JS 变量中:
<script type="text/javascript"> var id = '<?php echo $_SESSION['id']; ?>'; </script>
我的问题是,即使我使用相同的浏览器访问 domain.com
(第二次访问时没有 id
参数),是否可以保留 $_SESSION['id']
的值?
我找到了解决方案。我正在定义 $_SESSION['id']
即使没有 URL 参数。所以,当我访问没有 URL 参数的页面时,$_SESSION['id']
仍然用 empty/nothing.
定义它的值
所以为了解决这个问题,我添加了一个 isset
条件来确保它只在参数发布时定义,否则保留旧的。
if(isset($_GET['id'])) { $_SESSION['id'] = $_GET['id']; }
我正在尝试获取 URL 参数的值并使用 PHP 会话将其保存到 JS 变量。
我的URL:domain.com/?id=MYID
我的PHP代码:
session_start();
$_SESSION['id'] = $_GET['id'];
然后我将它保存在 JS 变量中:
<script type="text/javascript"> var id = '<?php echo $_SESSION['id']; ?>'; </script>
我的问题是,即使我使用相同的浏览器访问 domain.com
(第二次访问时没有 id
参数),是否可以保留 $_SESSION['id']
的值?
我找到了解决方案。我正在定义 $_SESSION['id']
即使没有 URL 参数。所以,当我访问没有 URL 参数的页面时,$_SESSION['id']
仍然用 empty/nothing.
所以为了解决这个问题,我添加了一个 isset
条件来确保它只在参数发布时定义,否则保留旧的。
if(isset($_GET['id'])) { $_SESSION['id'] = $_GET['id']; }