javascript json到php变量

javascript json到php变量,php,jquery,ajax,Php,Jquery,Ajax,我正在将一些json传递给php文件,但php中的变量仍然为空。我确信这是一些小的语法错误,但我无法找到导致此错误的原因,任何帮助都将不胜感激 JAVASCRIPT if(score >= 100) { console.log("HERE WE GO"); $.ajax({ type: "POST", url: "FAKENAME.php", data: { "data": "{ \"id\": " + id + ", \"q

我正在将一些json传递给php文件,但php中的变量仍然为空。我确信这是一些小的语法错误,但我无法找到导致此错误的原因,任何帮助都将不胜感激

JAVASCRIPT

if(score >= 100)
{
    console.log("HERE WE GO");
    $.ajax({
        type: "POST",
        url: "FAKENAME.php",
        data: { "data": "{ \"id\": " + id + ", \"quiz\": \"" + getDateTime() + "\"}" },

    }).done(function (data) {
        console.log(JSON.stringify(data) + "This is the data on .done");
        //alert( data );
    })
    .fail(function () {
        console.log("error");
        //alert( "error" );
    })
    .always(function (data) {
        console.log("finished");
        console.log(JSON.stringify(data));
        //alert( "finished" );
    });
}
PHP

请添加您的php页面的完整url,然后您必须像这样检查print\r($\u POST)
您可以像这样简化代码

什么是
getDateTime()
?它在调用php文件时返回一个时间戳为什么不只是在php文件中创建JSON,而只是传递“id”在您的ajax?Javascript帖子中,在处理了标题之后,最终需要从原始输入中提取到PHP,即,
$json\u obj=json\u decode(file\u get\u contents(“php://input“”)
可能重复的数据类型:“json”,添加此项谢谢您的帮助这有助于解决我的问题
$data = json_decode($_POST['data']);
$sql = $conn->prepare("SELECT * FROM FAKEDATABASETABLENAME WHERE id = :id");//no error
$sql->bindParam(':id', $data->id);
//$sql->bindParam(':quiz', $data->quiz);
$sql->execute(); //syntax error

if(!empty($data->id))
{
    $qry = $conn->prepare("UPDATE FAKEDATABASETABLENAME SET Quiz = '2018-06-27 14:44:49' WHERE id = 000007"); //no error and result
    $qry->bindParam(':id', $data->id);
    $qry->bindParam(':quiz', $data->quiz);
    $qry->execute();
}
else
{
    $mailto = "FAKEEMAIL.com" ; //Recipent of the email
    $from = "From: PHP_DEBUG";
    $subject = "PHP_DEBUG";
    $data = json_decode($_POST['data']);
    $content = "id is: " . $data->id. " plaese note.   quiz is: " . $data->quiz. " please note.";
    mail($mailto, $subject, $content, $from);

}
var person = {
        name: $("#id-name").val(),
        address:$("#id-address").val(),
        phone:$("#id-phone").val()
    }

    $('#target').html('sending..');

    $.ajax({
        url: '/test/PersonSubmit',
        type: 'post',
        dataType: 'json',
        contentType: 'application/json',
        success: function (data) {
            $('#target').html(data.msg);
        },
        data: JSON.stringify(person)
    });
if(score >= 100)
{
    var params = JSON.stringify({id: id, quiz: getDateTime()})
    $.ajax({
       type: "POST",
       url: "FAKENAME.php",
       dataType: "json",
       data: {data: params}
    }).done(function (data) {
       console.log(JSON.stringify(data) + "This is the data on .done");
    }).fail(function () {
       console.log("error");
       //alert( "error" );
    }).always(function (data) {
       console.log("finished");
       console.log(JSON.stringify(data));
       //alert( "finished" );
    });
}