我主持了Smarthosting,他们使用基于云的托管,可以提供更快的加载时间 - 非常棒!
但我有一个障碍。
我在一个单独的文件中通过PHP设置一些会话...
<?php
session_start();
if(filter_var($_POST['question_1'], FILTER_VALIDATE_INT)) {
$_SESSION['question_1'] = addslashes($_POST['question_1']);
}
if(filter_var($_POST['question_2a'], FILTER_VALIDATE_INT)) {
$_SESSION['question_2a'] = addslashes($_POST['question_2a']);
}
if(filter_var($_POST['question_2b'], FILTER_VALIDATE_INT)) {
$_SESSION['question_2b'] = addslashes($_POST['question_2b']);
}
if(filter_var($_POST['question_2c'], FILTER_VALIDATE_INT)) {
$_SESSION['question_2c'] = addslashes($_POST['question_2c']);
}
if(filter_var($_POST['question_2d'], FILTER_VALIDATE_INT)) {
$_SESSION['question_2d'] = addslashes($_POST['question_2d']);
}
if(filter_var($_POST['question_2e'], FILTER_VALIDATE_INT)) {
$_SESSION['question_2e'] = addslashes($_POST['question_2e']);
}
if(filter_var($_POST['question_2f'], FILTER_VALIDATE_INT)) {
$_SESSION['question_2f'] = addslashes($_POST['question_2f']);
}
if(filter_var($_POST['question_2g'], FILTER_VALIDATE_INT)) {
$_SESSION['question_2g'] = addslashes($_POST['question_2g']);
}
?>
然后我访问另一个PHP文件,将这些文件放入JSON字符串......
<?php
session_start();
echo json_encode($_SESSION);
?>
然而,这是正常的,直到我通过Ajax调用JSON ...
$.getJSON( "retrieve-variables.php", function( data ) {
var items = [];
...etc....
});
它没有提取最新的会话数据,似乎从先前的尝试中撤回了会话数据。这与云托管有关吗?还是其他一些问题?有没有办法可以禁用此特定文件和/或整个目录的缓存?
感谢收听。
编辑:如果我直接访问PHP检索文件,然后硬刷新(CTRL + F5),然后再次浏览表单,它将忽略我选择的答案并输入数据我做了那么辛苦的刷新
答案 0 :(得分:0)
我发现如何解决这个问题,万一有人发现这个帖子。
我简单地将缓存:“false”添加到ajax get请求中。