下面的模式表单一直停留在提交....它实际上并没有将消息发送到我的电子邮件。我对PHP比较陌生,但我认为这个问题与我的sendmessage.php
文件有关(见下文)。无论出于何种原因,本教程都声明不应用操作。我做错了什么?
仅供参考,我的标题包含jquery.fancybox.js?v=2.0.6
和ajax.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>
答案 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函数。 这就是表单在提交时卡住的原因。