我是否必须做var session = "<?php = $_SESSION['sessionname'] ?>";
之类的事情
或者它有一个jquery声明吗?
我希望能够使用jquery检查会话是否存在
我需要这样做,因为当用户输入他的用户名时,ajax会加载一个php文件来验证它。如果电子邮件不匹配,此php将启动会话。我试过JSON但它似乎对我不起作用。
我很乐意听到其他解决办法的方法:)
答案 0 :(得分:0)
php会话位于服务器端,而不是客户端。以下是另一种方法......
您可以使用以下插件 https://github.com/AlexChittock/JQuery-Session-Plugin
// To Store
$(function() {
$.session.set("myVar", "value");
});
// To Read
$(function() {
alert($.session.get("myVar"));
});
答案 1 :(得分:0)
data = {
action: "session"
}
$.ajax({
type: "POST",
dataType: "json",
url: ajaxurl,
data: data,
success: function (json) {
console.log(json.sessionvalue);
if(json.session == "true"){
// code here
}
}
});
在php端
if(isset($_POST['action']) && $_POST['action'] == 'session'){
session_start();
return json_encode(array("sessionvalue" => $_SESSION['mysessionvar']));
}
您还可以指定多维数组
$array = array("sessions"=>array('value1', 'value2', 'value3'), 'numbers'=>array(0,5,6,8));
return json_encode($array);
可以使用json.sessions [0]等来检索值。
提交ajax调用时,应始终使用console