电子邮件表格不发送

时间:2014-05-29 21:14:12

标签: javascript php twitter-bootstrap email

我无法收到此电子邮件表单.email.php文件位于根目录中,如下所示:

<?php
 $val= $_POST['val'];
 $toemail='someone@gmail.com';
 $name = $val['name'];
 $email = $val['email'];
 $msg = $val['msg'];

$subject = 'Message from zachjanice.com';

$headers = "From: zachjanice.com \r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";

&nbsp;

$message = "<b>Name :</b>".$name."<br>";
$message .='<b>Email :</b>'.$email."<br>";
$message .='<b>Message :</b>'.$msg;
mail($toemail, $subject, $message, $headers);

echo "Thanks for contacting me!";

?>

我正在使用validate.js来验证表单和bootstrap到样式。这是HTML:

<form class="contactform" role="form">
                    <div class="form-group">
                        <label class="control-label">Name</label>
                        <div class="controls">
                            <div class="input-group">
                            <span class="input-group-addon"><i class="glyphicon glyphicon-user"></i></span>
                                <input type="text" class="form-control" name="name" placeholder="Name">
                            </div>
                        </div>
                    </div>

                    <div class="form-group">
                        <label class="control-label">Email</label>
                        <div class="controls">
                            <div class="input-group">
                            <span class="input-group-addon"><i class="glyphicon glyphicon-envelope"></i></span>
                                <input type="text" class="form-control" id="email" name="email" placeholder="Email">
                            </div>
                        </div>  
                    </div>

                    <div class="form-group ">
                        <label class="control-label">Message</label>
                        <div class="controls">
                            <div class="input-group">
                            <span class="input-group-addon"><i class="glyphicon glyphicon-pencil"></i></span>
                                <textarea name="msg" class="form-control " rows="4" cols="78" placeholder="Enter your message here"></textarea>

                            </div>
                        </div>
                    </div>

                    <div class="controls" style="margin-left: 40%;">

                        <button type="submit" id="mybtn" class="btn btn-primary">Send Message</button>

                    </div>
            </form>

我忘了这是我的JS:

$(document).ready(function(){
 $.validator.setDefaults({
submitHandler: function(form) {
 $.ajax({
 type: "POST",
 url: "email.php",
 data: { 'val':$(".contactform").serializeJSON() }
 }).done(function(data) {
 alert(data);

 });
 }
});
$(".contactform").validate(
{rules:
{name:"required",
email:{required:true,email:true},
website:{required:false,url:true},
cate:"required",
msg:{required:true, maxlength:300
}},
errorClass:"error",
highlight: function(label) {
 $(label).closest('.form-group').removeClass('has-success').addClass('has-error');
 },

success: function(label) {
 label
 .text('Seems Perfect!').addClass('valid')
 .closest('.form-group').addClass('has-success');
 }
});
});

非常感谢帮助。我想尽可能在​​今晚完成这个网站,但我现在有点慌张。

1 个答案:

答案 0 :(得分:1)

尝试var_dump(mail($toemail, $subject, $message, $headers));

您将获得一些有用的信息。

同时检查是否填充了$name, $email$msg,如果不这样做:$name = $_POST['name']