You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

页面重载时PHP Session返回异常值问题求助

PHP Session 计数器异常问题

问题现象

  • 页面加载时创建Session计数器,预期每次加载递增,但出现异常:
    • 带init变量的测试代码:首次加载返回0,重载页面后始终返回固定值2
    • 移除init变量的测试代码:首次及后续加载均返回2
    • 补充测试:若不执行递增操作,Session返回1;执行递增后得到2
  • 大型脚本中通过AJAX调用Session时表现符合预期,但重载页面后变量直接返回1
  • 已确认Session ID前后完全一致(始终为tglih5gq8eeau35fidanl65nfr),运行环境为XAMPP 8.2.4.0,重装环境后问题仍存在

测试代码

测试代码1(test.php)

首次加载返回0,后续加载均返回2

<?php
session_start() ;

if (!isset($_SESSION["init"])) {
   $_SESSION["init"] = true ;
   $_SESSION["quiz_number"] = 0 ;
} else {
   ++$_SESSION["quiz_number"] ;
}

echo ($_SESSION["quiz_number"]) ;
?>

测试代码2

始终返回2

<?php
session_start() ;

if (!isset($_SESSION["quiz_number"])) {
   $_SESSION["quiz_number"] = 0 ;
} else {
   ++$_SESSION["quiz_number"] ;
}

echo ($_SESSION["quiz_number"]) ;
?>

AJAX相关代码

AJAX调用函数

var load_prs = function( data_func , loc ) {
   var parsreq = new XMLHttpRequest() ;

   parsreq.onreadystatechange = function() {
   if ( (parsreq.readyState === 4) && (parsreq.status === 200) )
      {
      data_func(parsreq.responseText) ;
      }
   } ;

   parsreq.open("POST" , loc , true) ;
   parsreq.send() ;
   } ;

调用语句

load_prs(displayResults, "test.php") ;

结果接收函数

function displayResults(response) { console.log(response) ; }

额外测试尝试

  • 尝试将值存储为带前缀(qn:)的字符串后拆分,重载后仍仅返回1
  • 存储字符串测试代码:首次加载返回"qn:0",重载后返回1
<?php
session_start() ;

if (!isset($_SESSION["init"])) {
   $_SESSION["init"] = true ;
   $_SESSION["quiz_number"] = "qn:0" ;
   $qn = $_SESSION["quiz_number"] ;
} else {
   $qn = $_SESSION["quiz_number"] ;
}

echo ($qn) ;
?>
  • Session ID测试代码:首次及重载后均返回tglih5gq8eeau35fidanl65nfr
<?php
session_start() ;

if (!isset($_SESSION["init"])) {
   $_SESSION["init"] = true ;
   $_SESSION["quiz_number"] = 0 ;
} else {
  ++$_SESSION["quiz_number"] ;
}

echo (session_id()) ;
?>

已查阅Stack Overflow及PHP官方Session文档,未找到相关解决方案。


内容的提问来源于stack exchange,提问作者Xavier

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 20:36:03