JSファイルから別のファイルのPHP関数にAjax呼び出しを行っています。 Ajaxの呼び出しは成功ですが、レコードを保存するという点では、処理のために正しいデータが返ってくるわけではありません。代わりに、私はページからhtmlを取得します。私は、レコードが保存されていない種類のエラーがあった場合、成功するかどうかを前進させたり、ユーザーに通知したりできるように、状況を確認する必要があります。ここに私のJSコードです。JSONがPHPから正しく返されないのはなぜですか?
$.ajax({
type: "POST",
url: "utils.php?do=saveTick",
data: {'dtData': JSON.stringify(sendData)},
success: function (data) {
alert(data.status);
if (data.status != "SUCCESS") {
$("#updateDiv").dialog('destroy');
alert("Failed!");
$("#btnPrint").attr('disabled', false);
return false;
} else {
me.confirmSave();
}
}
}, 'json'
);
PHPで処理した後、これが私のJSONを返そうとしているので、確認することができます。私は/キャッチをしようと、私はこの
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.ini
でauto_prepend_file
とauto_append_file
設定を取り除く
<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":"[email protected]"}]{"status":"SUCCESS","message":"Successfully called","data":null,"count":0}
</body>
</html>
あなたのphpファイルには、header.phpや統計データが含まれています。 –
これは*予定*です。 JSON –
を生成するファイルに何も含まれていないことを確認してください上記の 'console.log'は何ですか? – Barmar