我有一个脚本,通过一些ajax调用处理数据,具体取决于用户点击和再次完成调用的更改(工作正常).
$.ajax({
type: "POST",
url: "process_data.php",
data: { action: "first_action",data:data},
dataType: 'json',
success:function(result){
//process
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
}
});
Run Code Online (Sandbox Code Playgroud)
为了节省时间,我想process_data.php在第一次ajax调用期间在我的文件中执行一些查询并将它们保存到变量中,这样我就不必在每次调用中执行相同的查询.如何抓住ajax第一次通话?
我相信你可以设置一个$_SESSION标志来检查客户端的请求是否已执行此调用.
$_SESSION["exed"] = false;
if (!$_SESSION["exed"]) {
// Execute The Stuff
// Reset the session
$_SESSION["exed"] = true;
}
Run Code Online (Sandbox Code Playgroud)
或者即使上面看起来很愚蠢,首先也不会设置会话.
if (!isset($_SESSION["exed"])) {
// Execute The Stuff
// Reset the session
$_SESSION["exed"] = true;
}
Run Code Online (Sandbox Code Playgroud)
或者,如果你想这样做只为所有客户端一次,那么你就可以在服务器上使用文件和管理.如果这样可行,请告诉我.
此外,必须注意确保会话已经开始.请参阅PHP手册页面session_start.