无法获取PHP模式联系表单以提交电子邮件

时间:2013-08-04 19:10:50

标签: php contact-form

下面的模式表单一直停留在提交....它实际上并没有将消息发送到我的电子邮件。我对PHP比较陌生,但我认为这个问题与我的sendmessage.php文件有关(见下文)。无论出于何种原因,本教程都声明不应用操作。我做错了什么?

仅供参考,我的标题包含jquery.fancybox.js?v=2.0.6ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js

的脚本

sendmessage.php文件:

<?php
$sendto   = "jjaylad@me.com";
$usermail = $_POST['email'];
$content  = nl2br($_POST['msg']);

$subject  = "New Feedback Message";
$headers  = "From: " . strip_tags($usermail) . "\r\n";
$headers .= "Reply-To: ". strip_tags($usermail) . "\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html;charset=utf-8 \r\n";

$msg  = "<html><body style='font-family:Arial,sans-serif;'>";
$msg .= "<h2 style='font-weight:bold;border-bottom:1px dotted #ccc;'>New User Feedback</h2>\r\n";
$msg .= "<p><strong>Sent by:</strong> ".$usermail."</p>\r\n";
$msg .= "<p><strong>Message:</strong> ".$content."</p>\r\n";
$msg .= "</body></html>";


if(@mail($sendto, $subject, $msg, $headers)) {
    echo "true";
} else {
    echo "false";
}

?>

联系表单代码:

    <form id="contact" name="contact" action="#" method="post">
    <label for="email">Your E-mail Address:</label>
    <input type="email" id="email" name="email" class="txt">
    <br>
    <label for="msg">Inquiry:</label>
    <textarea id="msg" name="msg" class="txtarea"></textarea>

    <button id="send">Send E-mail</button>
</form>

2 个答案:

答案 0 :(得分:0)

表单action应指向sendmessage.php

<form id="contact" name="contact" action="sendmessage.php" method="post">
    <label for="email">Your E-mail Address:</label>
    <input type="email" id="email" name="email" class="txt">
    <br>
    <label for="msg">Inquiry:</label>
    <textarea id="msg" name="msg" class="txtarea"></textarea>
    <button id="send">Send E-mail</button>
</form>

答案 1 :(得分:0)

我想你可能错过了一个文件。

提交时出现404错误。 http://www.jjayladslair.com/sendmessage.php不存在。

仔细检查文件名?

*编辑:

注意到你实际上是使用$ .ajax来处理表单。这绝对是一个丢失文件或文件名不正确的情况。 404错误导致jQuery异常,然后停止执行Javascript函数。 这就是表单在提交时卡住的原因。