首先,谢谢,因为在这里查看我的问题。我的问题是我不能通过我的ajax请求发送电子邮件。实际上,我发布电子邮件的ajax请求是另一个ajax请求。
这是我的ajax的代码:
$.ajax({
url: 'creating_bill.php',
data: {
paid_amount : JSON.stringify(jumlah_semua),
email : emel,
name : nama
},
type: "POST",
dataType: "json",
success: function (data) {
id = data.id;
url = data.url;
confirm('Terima Kasih ! Sila membuat pembayaran dengan segera.');
window.open(data.url, '_blank');
setTimeout(checkBillStatus, 1000);
$('li#progress2').removeClass('active').next().addClass("active");
$('.container_waiting').fadeIn();
$('#cara_pembayaran_form').fadeOut();
var name =$('input#nama').val();
var phone =$('input#phone').val();
var negeri =$('input#negeri').val();
var bandar =$('input#bandar').val();
var poskod = $('input#poskod').val();
var alamat =$('input#alamat').val();
var emel = $('input#emel').val();
var jumlah = $('input#jumlah_semua').val();
var bill_url = url;
// Here is my ajax request to send email
$.ajax({
type: "POST",
url: "send_bill_email.php",
data: {
name : name,
phone : phone,
negeri : negeri,
bandar : bandar,
poskod : poskod,
alamat : alamat,
emel : emel,
jumlah : jumlah,
bill_url : bill_url
},
dataType:"json",
success: function(data2){
console.log("Success!");
}
});
},
async: false,
error: function(data) {
handleRequestError(data);
}
})
}
这是我在php中的代码:
<?php
$name = $_POST['name'];
$phone = $_POST['phone'];
$email = $_POST['emel'];
$address = $_POST['alamat'];
$poskod = $_POST['poskod'];
$negeri = $_POST['negeri'];
$bandar = $_POST['bandar'];
$jumlah_harga = $_POST['jumlah'];
$bill_url = $_POST['bill_url'];
$to = $email;
// Subject
$subject = 'FROM: Ordering System From - ' . $name;
// Message
$message = '
<html>
<head>
<title>' . $subject . '</title>
</head>
<body>
<p>Nama: ' . $name . '</p>
<p>Telefon: ' . $phone . '</p>
<p>Email: ' . $email . '</p>
<p>Alamat: ' . $address . '</p>
<p>Poskod: ' . $poskod . '</p>
<p>Negeri: ' . $negeri . '</p>
<p>Bandar: ' . $bandar . '</p>
<p>Jumlah Harga: ' . $jumlah_harga . '</p>
<p>Bill url: ' . $bill_url . '</p>
</body>
</html>
';
// To send HTML mail, the Content-type header must be set
$headers[] = 'MIME-Version: 1.0';
$headers[] = 'Content-type: text/html; charset=iso-8859-1';
// Additional headers
$headers[] = 'From: ' . $name . ' <' . $email . '>';
// Mail it
mail($to, $subject, $message, implode("\r\n", $headers));
?>
感谢您的时间。我希望有人可以帮我解决这个问题。
答案 0 :(得分:1)
你能尝试将你的整个PHP代码包装到这个
if($_SERVER['REQUEST_METHOD']=='POST'){
//YOUR CODE GOES HERE
}
我强烈建议您使用浏览器的开发窗口查看该过程。