我在我的网页上有一个联系我们表单,我使用php和jquery从联系我们表单发送数据。
当我填写数据时,我会收到“已发送消息”的提示,但我的电子邮件中未发送任何消息。
这是我的HTML代码
<!--CONTACT US FORM-->
<section id="contact">
<div class="containercontact">
<h2>Contact me</h2>
<div class="title-bar"></div>
<form action="" method="post" id="mycontactform">
<div class="left">
<input type="text" id="name" name="name" placeholder="Name" required="required"/>
<input type="email" id="email" name="email" placeholder="Email" required="required"/>
<input type="text" id="subject" name="subject" placeholder="Subject"/>
</div>
<div class="right">
<textarea placeholder="Message" id="message" name="message" required="required"></textarea>
</div>
<div class="send-button cl">
<button id="submit">Send Message</button>
</div>
</form>
</div>
</section>
这是我的PHP代码
<?php
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
$subject = $_POST['subject'];
$to = 'example@example.com';
$message = <<<EMAIL
$subject
$message
From: $name
Email: $email
EMAIL;
$headers = 'From:' . $email;
if (filter_var($email, FILTER_VALIDATE_EMAIL))
{
mail($to, $subject, $message, $headers);
echo "Thank you for your email! We will reply as soon as possible.";
}
else
{
echo "Invalid Email, please provide a correct email address.";
}
?>
这是我的Jquery代码
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function(){
$('#submit').click(function(){
$.post("php/contactUs.php",
$("#mycontactform").serialize(),
function(response) {
alert("message sent!");
});
return false;
});
});
</script>
我根本无法让它发挥作用。我在我的wamp localhost上运行它仍然没有任何反应。
我们将不胜感激任何帮助!
答案 0 :(得分:0)
您的主机上有邮件服务器吗?
如果你不支持php邮件功能。
您必须使用谷歌的smtp服务器从您的Gmail发送电子邮件
我在github上有一个项目,如果你想告诉我我做了