我正在从java脚本进行ajax调用,并且尝试从php获取json响应,如果我将dataType设置为JSON,则如果未执行成功 block ,则将执行ajax错误 block ,如果我尝试执行,则不指定dataType console.log 成功 block 中的响应我什么也没得到

JS

let CurrentDate = Date(); 
console.log(CurrentDate); 
 
jsonObject = { 
   'TrackName' : 'Material Science', 
    'TrackDesc' : 'Test Text Test Text Test Text Test Text Test Text Test Text Test Text ', 
    'Timestamp' : CurrentDate 
} 
console.log(jsonObject); 
$.ajax({ 
    type:'post', 
    url:'../../../../PHP/adminScripts/addNewTrack.php', 
    contentType: "application/json", 
    data: {trackDetails:jsonObject}, 
    dataType: "json", 
    success: function(response) { 
        console.log('SUCCESS BLOCK'); 
        console.log(response); 
    }, 
    error: function(response) { 
        console.log('ERROR BLOCK'); 
        console.log(response); 
    } 
}); 

PHP

<?php 
header('Content-type: application/json'); 
include('../connection.php'); 
 
if($_POST) { 
$obj = $_POST['trackDetails']; 
 
$TrackName = mysql_real_escape_string($obj['TrackName']); 
$TrackDesc = mysql_real_escape_string($obj['TrackDesc']); 
$TrackAdderID = 'Admin ';                  //$_SESSION["userID"]; 
$Timestamp = mysql_real_escape_string($obj['Timestamp']); 
 
$response_array['status'] = 'status123'; 
echo json_encode($response_array); 

请帮我弄清楚如何在 PHP 中获取 ajax 调用的 json 响应

请您参考如下方法:

  • 在 JS 文件中,删除 contentType: "application/json",
  • 在您的 php 文件中,选中“包含文件 url”并
  • 正确关闭 if 语句 block

JS 文件:

let CurrentDate = Date(); 
jsonObject = { 
   'TrackName' : 'Material Science', 
    'TrackDesc' : 'Test Text Test Text Test Text Test Text Test Text Test Text Test Text ', 
    'Timestamp' : CurrentDate 
} 
$.ajax({ 
    type:'post', 
    url:'addNewTrack.php', 
    data: {trackDetails:jsonObject}, 
    dataType: "json", 
    success: function(response) { 
        console.log('SUCCESS BLOCK'); 
        console.log(response); 
    }, 
    error: function(response) { 
        console.log('ERROR BLOCK'); 
        console.log(response); 
    } 
}); 

PHP 文件:

<?php 
    header('Content-type: application/json'); 
    include('../connection.php'); 
 
    if($_POST) { 
        $obj = $_POST['trackDetails']; 
 
        $TrackName = mysql_real_escape_string($obj['TrackName']); 
        $TrackDesc = mysql_real_escape_string($obj['TrackDesc']); 
        $TrackAdderID = 'Admin ';                  //$_SESSION["userID"]; 
        $Timestamp = mysql_real_escape_string($obj['Timestamp']); 
 
        $response_array['status'] = 'status123'; 
        echo json_encode($response_array); 
    } 
?> 


评论关闭
IT虾米网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!