我有这个javascript来更新一个php会话变量:
$(document).ready(function(){
$('#facebook_img').live('click',function(){
login_condetion = 1;
$.ajax({
type: "POST",
url: 'facebook_login_condition_variable.php',
data:{login_condetion:login_condetion},
dataType: "json",
success: function(data)
{
alert(123);
},
error : function(XMLHttpRequest, textStatus, errorThrown) {
/*alert(XMLHttpRequest);
alert(textStatus);
alert(errorThrown);
alert(XMLHttpRequest.responseText);*/
}
});
});
});
我在此代码之前和之后打印会话值,但它永远不会改变,当我警告responsText时,我什么也得不到,XMLHttpRequest给了我对象对象错误。
这是我的php代码:<?php
$temp = $_POST['login_condetion'];
if(!empty($temp) && $temp != 0)
{
$_SESSION['do_not_allow_auto_facebook_login'] = 1;
}
else
{
$_SESSION['do_not_allow_auto_facebook_login'] = 0;
}
$go = $_SESSION;
echo json_encode($go);
?>
是否有ajax函数的数据类型的问题?还是PHP会话问题?请帮帮我,我已经被困在这里很久了
一些建议…
-
您是否在使用它的页面顶部开始使用
session
session_start ();
php代码中 替换
$go = $_SESSION;
$go = $_SESSION['do_not_allow_auto_facebook_login'];
3。是否需要数据类型json
,如果不需要,请删除
echo json_encode($go);
和使用
echo $go;
在脚本顶部使用session_start():
<?php
session_start();
...