Php 返回错误值的json_编码布尔值

Php 返回错误值的json_编码布尔值,php,jquery,json,login,Php,Jquery,Json,Login,我正在编写jquery登录。如果php登录脚本(checklogin.php)回显“true”,那么我的jquery页面应该会发出警报。当我运行login.php(不使用jquery)时,它会将请求发送到checklogin.php,该请求回显“true”。但是,如果我使用jquery登录脚本将登录信息发送到checklogin.php,我跟踪的警报会显示“false” 使用json\u encode,将返回布尔值null $('#login').click(function(e){

我正在编写jquery登录。如果php登录脚本(checklogin.php)回显“true”,那么我的jquery页面应该会发出警报。当我运行login.php(不使用jquery)时,它会将请求发送到checklogin.php,该请求回显“true”。但是,如果我使用jquery登录脚本将登录信息发送到checklogin.php,我跟踪的警报会显示“false”

使用
json\u encode
,将返回布尔值
null

$('#login').click(function(e){
       $.getJSON("http://www.hedonsoft.com/game/login.php",{username: $("#username").val(), password: $("#password").val()},function(data){
          if(data.boolean == "true"){
             alert("true");
             //$('#logindiv').slideUp();
             //$('#gamediv').show(); 
             //$('#registerdiv').hide();
             //$('#gameheader').html(data['username']);
          }else{            alert(data);
          }
       }); });

使用
true
,而不是
'true'
<代码>'true'是一个字符串,您需要一个布尔值:

$json = array('boolean' => true, 'jsonUser' => $myusername);
此外,切勿写入
==true

if(data==true) {

不要
echo-true
echo-json\u-encode($json)

“永不写入==true”->为什么?@Mahn:这只会导致代码错误
if(data==true)
通常等同于
if(data)
。如果是等效的,
==true
是多余的,应该去掉。如果它不是等价的,那么您的代码就有一个严重的问题——这里就是这样。如果你真的需要检查
true
值,那么最多使用
==true
而不是别的。嗯,可能只有我一个人,但我很难想象在什么情况下
如果(数据==true)
如果(数据)
不相等,你能举个例子吗?只是好奇,没有效果。警告(“假”);还是在开火。@Mahn:嗯,JavaScript<代码>'true'!=true但是
'true'
是真实的。json_encode是在某处实际使用的,还是只是在收集回音“true”;作为ajax响应?请参见我的编辑。这是我最初尝试的,但无论我做了什么,它总是返回null,所以我想尝试一个简单的字符串或布尔值检查会更容易,一旦我成功了,我就会再试一次。@RapsFan1981:请参阅更新的答案。
$('#login').click(function(e){
       $.getJSON("http://www.hedonsoft.com/game/login.php",{username: $("#username").val(), password: $("#password").val()},function(data){
          if(data.boolean == "true"){
             alert("true");
             //$('#logindiv').slideUp();
             //$('#gamediv').show(); 
             //$('#registerdiv').hide();
             //$('#gameheader').html(data['username']);
          }else{            alert(data);
          }
       }); });
$json = array('boolean' => true, 'jsonUser' => $myusername);
if(data==true) {
$json = array('boolean' => true, 'jsonUser' => $myusername);
echo true;