我在输入上有一个事件侦听器,该侦听器执行ajax请求来设置PHP会话变量。
这在第一个事件触发器上起作用,但是此后,PHP会话变量保持不变。
这是我的PHP块
session_start();
if(isset($_GET['driver'])){
$driver = $_GET['driver'];
$_SESSION['driver'] = $driver;
}
这是我的JavaScript
$('#save').change(function() {
$.ajax({
url: 'index.php',
method: 'GET',
data: {
'driver': 'example'
}
});
这是我的控制台日志。从第一个更改触发器开始。我正在使用dump_session输出php变量的内容。 在“尝试ajax请求”之前,将是ajax请求中正在发送的新修改输入。
builder.js:168 (2) [_.P, _.P]
builder.js:170 ["Galerías Toluca"]
builder.js:171 Attempting ajax request
builder.js:318 array(2) {
["destinos"]=>
string(22) "["GalerÃas Toluca"]"
["markers"]=>
string(82) "[{"lat":19.2889701,"lng":-99.61342109999998},{"lat":19.2898867,"lng":-99.6226059}]"
}
builder.js:168 (3) [_.P, _.P, _.P]
builder.js:170 (2) ["Galerías Toluca", "IEDIS TOLUCA"]
builder.js:171 Attempting ajax request
builder.js:318 array(2) {
["destinos"]=>
string(22) "["GalerÃas Toluca"]"
["markers"]=>
string(82) "[{"lat":19.2889701,"lng":-99.61342109999998},{"lat":19.2898867,"lng":-99.6226059}]"
}
答案 0 :(得分:1)
我假设您在更新unset($_SESSION['driver']);
之前已经使用过$_SESSION['driver'] = $driver;
,但问题仍然相同
答案 1 :(得分:1)
尝试此代码
require "src/akSession.php" ;
$session= akSession::getInstance();
if(isset($_GET['driver'])){
$driver = $_GET['driver'];
$session->set('driver', $driver);
}
不要忘记将composer require aminelch/ak-session
添加到您的作曲家文件中