我正在从JS文件到另一个文件中的PHP函数进行Ajax调用。虽然Ajax调用是成功的,因为它保存了记录,但我没有收回正确的数据进行处理。相反,我从页面获取html。我需要能够检查状态,以便我可以在成功时继续前进,或者如果有任何类型的错误没有保存记录,则通知用户。这是我的JS代码。
try {
$data = json_decode($_REQUEST['dtData']);
$values = $data[0];
$ordNbr = $values->ordnbr;
$saveTick = Do something and save the ticket
// if ($saveTick->status === "SUCCESS") {
$this->getSalesData($values, $ordNbr);
echo json_encode($saveTick);
} catch (Exception $e) {
$saveTick = array('status' => 'FAILED');
echo json_encode($saveTick);
}
在通过PHP处理后,我正在尝试返回我的JSON,以便我可以检查它。在我尝试/捕捉我有这个
<html>
<head>
<title></title>
<style>
TR.main_header {
background-color:black;
color:white;
}
TR.main_footer {
background-color:#396B42;
color:white;
}
div.error {
color: red;
font-weight: bold;
}
</style>
</head>
<body>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr class="main_header">
<td align="left" width="25%"></td>
<td align="right" width="25%">Tuesday May 31,2016</td>
</tr>
</table>
[{"shipdate":"2016-05-31","ordnbr":"BR549","custid":"CUST","deltcktno":"D333423","siteid":"Some Site","dttype":"REG","IsExport":true,"slsperid":"","slsname":"Some Sales","slsemail":"me@me.com"}]{"status":"SUCCESS","message":"Successfully called","data":null,"count":0}
</body>
</html>
这是从我上面的console.log返回到控制台的内容
{{1}}
答案 0 :(得分:2)
摆脱auto_prepend_file
中的auto_append_file
和php.ini
设置。如果它们只是定义了变量和函数,那么这些将是安全的,但如果它们输出HTML,它们将干扰应该返回其他类型输出的脚本,例如JSON或XML。
您必须重新编码所有其他脚本以明确要求其页眉和页脚,而不是依赖此PHP设置。