简单的Php Mailer.php和一个contact.html,需要html帮助可能会遗漏几个标签

时间:2013-03-08 01:18:40

标签: php html5

嗨我是全新的php,我有一个网站,我有一个contact.html,它有表格的名称,电子邮件,保险类型,主题和评论可以填写。 点击提交按钮后,指定的电子邮件将收到详细信息。似乎找不到问题。

这是contact.html的html代码

 <form id="ajax-contact-form">
        <div class="row">
            <div class="span4">
                <div class="form-padding">
                    <label for="f1">Your name(required):</label>
                    <input type="text" name="name" id="f1" class="form-text" value=""/>
                    <label for="f2">Insurance type:</label>
                    <input type="text" name="category" id="f2" class="form-text" value="" size="40"/>
                </div>
            </div>
            <div class="span4">
                <div class="form-padding">
                    <label for="f3">Your email(required):</label>
                    <input type="text" name="email" id="f3" class="form-text" value="" size="40"/>
                    <label for="f4">Subject:</label>
                    <input type="text" name="subject" id="f4" class="form-text" value="" size="40"/>        
                </div>
            </div>
        </div>
        <div class="row">
            <div class="span8">
                <div class="form-padding">
                    <label for="f5">Message(required):</label>
                    <textarea name="message" id="f5" cols="40" rows="10"></textarea>    
                </div>
            </div>
        </div>
                    <!-- send mail configuration -->
                    <input type="hidden" value="myemail@gmail.com" name="to" id="to" />
                    <input type="hidden" value="myemail@gmail.com" name="from" id="from" />
                    <input type="hidden" value="From contact form" name="subject" id="subject" />
                    <input type="hidden" value="send-mail.php" name="sendMailUrl" id="sendMailUrl" />
                    <!-- ENDS send mail configuration -->               
                    <p><input type="button" class="button red small" value="Submit Form" name="submit" id="submit" /></p>
        </form>

AND MY SEND-MAIL.PHP

    <?php
        //vars
        $subject = $_POST['subject'];
        $to = explode(',', $_POST['to'] );

        $from = $_POST['email'];

        //data
        $msg = "NAME: "  .$_POST['f1']    ."<br>\n";
        $msg .= "INSURANCE: "  .$_POST['f2']    ."<br>\n";
        $msg .= "EMAIL: "  .$_POST['f3']    ."<br>\n";
        $msg .= "SUBJECT: "  .$_POST['f4']    ."<br>\n";
        $msg .= "COMMENTS: "  .$_POST['f5']    ."<br>\n";

        //Headers
        $headers  = "MIME-Version: 1.0\r\n";
        $headers .= "Content-type: text/html; charset=UTF-8\r\n";
        $headers .= "From: <".$from. ">" ;


        //send for each mail
        foreach($to as $mail){
           mail($mail, $subject, $msg, $headers);
        }

        ?>

我的JS功能

// contact form
$("#ajax-contact-form").submit(function() {
var str = $(this).serialize();
    $.ajax({
    type: "POST",
    url: "send-mail.php",
    data: str,
    success: function(msg) {
        if(msg == 1) {
            result = '<div class="alert success fade in">Your message has been sent. Thank you!<a href="#" class="close-alert" data-dismiss="alert"></a></div>';
            $("#ajax-contact-form").hide();
        } else {result = msg;}
        $('#form-message').hide();
        $('#form-message').html(result);
        $('#form-message').fadeIn("slow");
        }
    });
return false;
});

我的问题

  1. 似乎有错误,无法发送邮件。我很天真。任何帮助将不胜感激。

  2. 如何在点击提交按钮后显示成功消息。

  3. 由于

1 个答案:

答案 0 :(得分:1)

也许你必须填写表格开放标签

<form id="ajax-contact-form" method="POST" action="send-mail.php">

除非您使用Ajax,否则您必须在问题中提供ajax代码。