如何在Wordpress页面上发送带有联系表格的电子邮件

时间:2015-03-19 05:29:29

标签: php wordpress

我正在尝试使用简单的联系表单来处理我的wordpress网站,但无法让它工作。我不想使用任何插件,我只想用PHP来做。所以我把这个文件放在我的hostgator托管网站上的wordpress安装的根目录

www.example.com/sendmail.php

<?php
if(isset($_POST['submit'])){
$to = "myemail@yahoo.com";
$from= $_POST['email'];
$fname= $_POST['fname'];
$lname= $_POST['lname'];
$message= $_POST['message'];
$subject = "Request email";
$headers = "From:" .$from;

mail($to,$subject,$message,$headers);
}
?>

这是www.example.com/contact-us

上的联系我们表格
    <form action="http://www.example.com/sendmail.php" method="post">
                        <fieldset>
                            <div class="form-group">
                                <div class="col-md-12">
                                    <input id="fname" name="name" type="text" placeholder="First Name" class="form-control">
                                </div>
                            </div>
                            <div class="form-group">
                                <div class="col-md-12">
                                    <input id="lname" name="name" type="text" placeholder="Last Name" class="form-control">
                                </div>
                            </div>

                            <div class="form-group">
                                <div class="col-md-12">
                                    <input id="email" name="email" type="text" placeholder="Email Address" class="form-control">
                                </div>
                            </div>

                            <div class="form-group">
                                <div class="col-md-12">
                                    <input id="phone" name="phone" type="text" placeholder="Phone" class="form-control">
                                </div>
                            </div>

                            <div class="form-group">
                                <div class="col-md-12">
                                    <textarea class="form-control" id="message" name="message" placeholder="Enter your massage for us here. We will get back to you within 2 business days." rows="7"></textarea>
                                </div>
                            </div>

                            <div class="form-group">
                                <div class="col-md-12 text-center">
<!--                                    <button type="submit" class="btn btn-primary btn-lg">Submit</button>-->
                                        <input type="submit" name="submit" class="btn btn-primary btn-lg"  value="Submit">
 </div>
                            </div>
                        </fieldset>
                    </form>

如果我尝试访问此页面www.example.com/sendmail.php,则会提供200条成功的确认消息。但是,如果我尝试填写表格,然后发送电子邮件,我无法收到。

我有什么遗漏或需要检查吗?

1 个答案:

答案 0 :(得分:0)

您在$fname= $_POST['fname']; $lname= $_POST['lname'];

上收到了这些变量sendmail.php

但您的html表单输入字段没有fnamelname的名称。

所以使用下面的一个:

 <div class="form-group">
                                <div class="col-md-12">
                                    <input id="fname" name="fname" type="text" placeholder="First Name" class="form-control">
                                </div>
                            </div>
                            <div class="form-group">
                                <div class="col-md-12">
                                    <input id="lname" name="lname" type="text" placeholder="Last Name" class="form-control">
                                </div>
                            </div>

而不是:

 <div class="form-group">
                                <div class="col-md-12">
                                    <input id="fname" name="name" type="text" placeholder="First Name" class="form-control">
                                </div>
                            </div>
                            <div class="form-group">
                                <div class="col-md-12">
                                    <input id="lname" name="name" type="text" placeholder="Last Name" class="form-control">
                                </div>
                            </div>

希望它对你有所帮助。