상태를 업데이트하면 이메일이 전송됩니다. 문제는 많은 다른 필드가 있으며 그 중 누군가를 업데이트 할 때마다 이메일을 다시 촬영한다는 것입니다. 이메일이나 팩스로 보내려는 경우 확인을 요청하고 싶습니다. 콘솔에서 AJAX를 사용하여 이메일을 보냈지 만받은 편지함에는 아무것도 표시되지 않습니다. 항상이 거짓이 될 것입니다자바 스크립트 확인시 PHP 코드 실행
자바 스크립트 코드
<script type="text/javascript">
function send_email(){
var delete_confirmed=confirm("Are you sure you want to send email?");
if (delete_confirmed==true) {
$.ajax({
type: "POST",
url: 'email.php',
data:{action:'call_this'},
success:function() {
console.log('email sent');
}
});
}}
</script>
email.php로
if(isset($_POST['status']) == 'completed' && $_POST['action'] == 'call_this'){
$cmail = new PHPMailer;
$cmail->isSMTP(); // Set mailer to use SMTP
$cmail->SMTPAuth = true; // Enable SMTP authentication
$cmail->Host = $smtp_server; // Specify main and backup SMTP servers
$cmail->Username = $username; // SMTP username
$cmail->Password = $password; // SMTP password
$cmail->SMTPSecure = "ssl"; // Enable TLS encryption, `ssl` also accepted
$cmail->Port = 465; // TCP port to connect to
$cmail->setFrom("[email protected]", "Example");
$q_mail = "SELECT * FROM order_details WHERE order_id = '$_GET[edit_id]'";
$r_mail = mysqli_query($conn, $q_mail);
while ($r_rows = mysqli_fetch_assoc($r_mail)) {
$cmail->addAddress($r_rows['email'], $r_rows['firstname']); // Add a recipient
$cmail->isHTML(true); // Set email format to HTML
$bodyContent = 'test message';
$cmail->Subject = "test subject" ;
$cmail->Body = $bodyContent;
if(!$cmail->send()) {
$error = $cmail->ErrorInfo;
} else {
$error = 'Message has been sent';
}
}
}
형태의 HTML 당신의 PHP에서
<div class="col-md-2" style="padding-left:0px;" ></br>
<input type="submit" class="btn navbar-bar btn-xs btn-success" name="status" onclick="send_email();" value="Update">
</div>
html도 표시 –
CLARIFICATION PLEASE : 상태가 변경된 경우 전자 메일을 보내지 않으시겠습니까? 옳고 그름? – RiggsFolly
'$ _POST [ 'status']'는 어디에서 보내나요? –