在更改时更新 PHP 会话变量
Update PHP session variable on change
我在输入上有一个事件侦听器,它执行 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 变量的内容。
在 "Attempting ajax request" 之前将是在 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}]"
}
我假设您在更新 $_SESSION['driver'] = $driver;
之前已经使用了 unset($_SESSION['driver']);
并且问题仍然相同
试试这个代码
require "src/akSession.php" ;
$session= akSession::getInstance();
if(isset($_GET['driver'])){
$driver = $_GET['driver'];
$session->set('driver', $driver);
}
不要忘记将 composer require aminelch/ak-session
添加到您的作曲家文件
我在输入上有一个事件侦听器,它执行 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 变量的内容。 在 "Attempting ajax request" 之前将是在 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}]"
}
我假设您在更新 $_SESSION['driver'] = $driver;
之前已经使用了 unset($_SESSION['driver']);
并且问题仍然相同
试试这个代码
require "src/akSession.php" ;
$session= akSession::getInstance();
if(isset($_GET['driver'])){
$driver = $_GET['driver'];
$session->set('driver', $driver);
}
不要忘记将 composer require aminelch/ak-session
添加到您的作曲家文件