Javascript JSON ajax和jquery,无法开始工作?

Javascript JSON ajax和jquery,无法开始工作?,javascript,jquery,ajax,json,Javascript,Jquery,Ajax,Json,我的javascript中有以下脚本 $.ajax({ type: 'POST', url: 'http://www.example.com/ajax', data: {email: val}, success: function(response) { alert(response); } }); 我的php文件如下所示 if ($_REQUEST['email']) { $q = $dbc -> pre

我的javascript中有以下脚本

$.ajax({
    type: 'POST',
    url: 'http://www.example.com/ajax',
    data: {email: val},
    success: function(response) {   
             alert(response);
    }
});
我的php文件如下所示

    if ($_REQUEST['email']) {

$q = $dbc -> prepare("SELECT email FROM accounts WHERE email = ?");
$q -> execute(array($_REQUEST['email']));
if (!$q -> rowCount()) {

    echo json_encode(error = false);
}
else {

    echo json_encode(error = true);
}

    }
我无法从ajax调用中获取变量错误true或false

我如何将数据放入ajax调用中有关系吗


此时,它与上面一样,email是请求的名称,val是用户在表单中输入的javascript变量。

试试这个。您当前的代码应该会给您一个语法错误

if (!$q -> rowCount()) {

    echo json_encode(array('error' => false));
}
else {

    echo json_encode(array( 'error' => true ))
}

试试这个。您当前的代码应该会给您一个语法错误

if (!$q -> rowCount()) {

    echo json_encode(array('error' => false));
}
else {

    echo json_encode(array( 'error' => true ))
}

在代码中,返回参数是json

$.ajax({
    type: 'POST',
    url: 'http://www.example.com/ajax',
    dataType: 'json',
    data: {email: val},
    success: function(response) {   
             alert(response);
    }
});
PHP文件

if ($_REQUEST['email']) {

   $q = $dbc -> prepare("SELECT email FROM accounts WHERE email = ?");
   $q -> execute(array($_REQUEST['email']));
   if (!$q -> rowCount()) {
       echo json_encode(error = false);
       return json_encode(error = false);
   } else {

       echo json_encode(error = true);
       return json_encode(error = true);
    }
 }

在代码中,返回参数是json

$.ajax({
    type: 'POST',
    url: 'http://www.example.com/ajax',
    dataType: 'json',
    data: {email: val},
    success: function(response) {   
             alert(response);
    }
});
PHP文件

if ($_REQUEST['email']) {

   $q = $dbc -> prepare("SELECT email FROM accounts WHERE email = ?");
   $q -> execute(array($_REQUEST['email']));
   if (!$q -> rowCount()) {
       echo json_encode(error = false);
       return json_encode(error = false);
   } else {

       echo json_encode(error = true);
       return json_encode(error = true);
    }
 }

您是否使用firebug或类似工具查看AJAX请求/响应?我有firebug lite for chrome。ajax请求成功,但之前返回了[object]:[object]。非常好。谢谢你的更新。仅供参考,如果你想尝试摆脱firebug lite,chrome开发者工具本身就相当不错。你是否使用firebug或类似工具查看AJAX请求/响应?我有firebug lite for chrome。ajax请求成功,但之前返回了[object]:[object]。非常好。谢谢你的更新。仅供参考,如果你想尝试摆脱firebug lite,chrome开发者工具本身就相当不错。这是可行的,但为什么它必须在一个数组中?感谢InterstellarBecause
json_encode()
将混合参数作为其参数,但更重要的是,数组是存储密钥、值对的最合理的结构。数组最终被转换成
{“error”:true}
这是可行的,但是现在我该如何调用变量呢?错误,不是吗,我试过response['error'],response[error],response[“error”]?这个JSON的东西很烦人,哈哈。这是可行的,但为什么它必须在一个数组中呢?感谢InterstellarBecause
json_encode()
将混合参数作为其参数,但更重要的是,数组是存储密钥、值对的最合理的结构。数组最终被转换成
{“error”:true}
这是可行的,但是现在我该如何调用变量呢?错误,不是吗,我试过response['error'],response[error],response[“error”]?这个JSON的东西真烦人。是的,你是对的,我以为问题出在没有数据类型。是的,你是对的,我以为问题出在没有数据类型。