2017-08-14 107 views
-3

我准备好了一个PHP表单,并在发送表单后显示成功消息。问题是,该信息显示在页面重定向到phpmailer.php后发送表单后发送PHP邮件“谢谢”消息

如何在用户单击提交后显示消息?我的最终目标是让表单消失并显示感谢信息。

<?php session_start(); 
if(isset($_POST['Submit'])) { 
$youremail = '[email protected]'; 
$fromsubject = 'domain-here.com'; 
$name = $_POST['name']; 
$mail = $_POST['mail']; 
$message = $_POST['message']; 
    $to = $youremail; 
    $mailsubject = 'Masage recived from'.$fromsubject.' Contact Page'; 
    $body = $fromsubject.' 

    The person that contacted you is '.$name.' 
    E-mail: '.$mail.' 

    Message: 
    '.$message.' 

    |---------END MESSAGE----------|'; 
echo "Thank you fo your feedback."; 
           mail($to, $subject, $body); 
} else { 
echo "You must write a message"; 
} 
?> 

这里是PHP代码:

提前感谢!

+0

从邮件代码的JavaScript警报中显示消息。手段取代'回声“谢谢你的反馈。”; '用javascript警报。 –

回答

0

在邮件页面中使用ajax,使页面与写入页面分离。用户点击“发送”后,数据发布到进程页,并用短信或JSON数据作出反应,并显示在页面写

$.ajax({ 
    url: 'your-url-to-send-mail-page', 
    type: 'POST', 
    data: maildata, 
    async: true, 
    dataType: 'text', 
    processData: false, 
    success: function(data) { 
     alert(data); 
    }, 
    error: function(data) { 
     alert('An error occurs!'); 
    } 
}); 

------ UPDATE上的消息---- -

write.php:

<form id="mailForm"> 
    <input type="text" name="Submit" value="" /> 
    <label for="title">Title:</label> 
    <input type="text" name="title" id="title" value="" /> 
    <textarea name="content" rows="30" cols="50"></textarea> 
    <button id="sendBtn">Send</button> 
</form> 
<script type="text/javascript"> 
    var maildata = new FormData($("#mailForm")[0]); 
    $.ajax({ 
     url: 'send.php', 
     type: 'POST', 
     data: maildata, 
     async: true, 
     dataType: 'text', 
     processData: false, 
     success: function(data) { 
      alert(data); 
     }, 
     error: function(data) { 
      alert('An error occurs!'); 
     } 
    }); 
</script> 

所以应该警惕 “谢谢FO您的反馈意见。”点击发送按钮后

对不起,因为英语不好

+0

我不明白在那里实现这个:(请帮我 – Alex

+0

做2页,一个用于写和另一个用于发送,使用jQuery绑定这个Ajax到你的“发送”按钮,并使发送页面回声谢谢你的邮件后的邮件被发送,所以上一页收到消息并显示出来。 对不起英语差 – Zhwt