我正在使用以下jQuery代碼將表單數據發送到PHP處理腳本,該腳本要麼在數據庫中輸入新列表或更新現有列表。mail()阻止JSON響應
該網站列出發佈船隻及遊艇。它的工作很好,但現在客戶希望在新船上市時收到電子郵件通知。我將代碼添加到了PHP處理腳本中,但是如果由於某種原因使用mail()
,它會阻止成功函數在下面的jQuery代碼中工作。
mail()
函數是唯一影響它的函數。如果我評論這條線,它再次運作。
發生了什麼的任何想法?
$.ajax({
type: "POST",
url: "scripts/listing_form_json_exec.php",
dataType: 'json',
data: JSON.stringify(dataString),
success: function(data) {
var yacht_id = (data);
$('#manage_images_link').attr('href', 'manage_images.php?yacht_id=' + yacht_id);
$('input[name=yacht_id]').val(yacht_id);
$('img.saved').show();
$('img.saved').fadeOut(3000);
$('div#button_frame').show();
$('#errors_container').html('');
}
});
編輯
PHP腳本很長,但這裏是有問題的部分
$_SESSION['SESS_YAUCHT_ID'] = $yacht_id;
echo json_encode($yacht_id);
if (isset($message)) {
//mail($to, $subject, $message, $headers);
}
我試圖把mail()
功能在不同的地方,但無論在哪裏我把它同樣的事情發生。以上我已將mail()
函數註釋掉,並且所有工作都正常。如果我取消註釋,腳本停止工作。
顯示PHP腳本。這可能會打印出一個錯誤,這會干擾JSON。 – Barmar 2013-05-06 20:30:33
此外,請檢查您的服務器錯誤日誌以查看mail()調用中的PHP錯誤。 – 2013-05-06 20:31:22
如果您正在測試它,您是否在服務器或本地主機上運行了正在運行的郵件程序? – adeneo 2013-05-06 20:34:48