php联系表单的问题..是我的代码还是我的服务器设置?

时间:2016-02-10 12:03:21

标签: php forms contact

iv一直试图建立一个php联系表单并且没有得到想要的结果,有人能告诉下面的代码是否适用于那些服务器或者它的代码是否在falt?

contact.php

<form name="contact" action="contactMail.php" method="POST" enctype="multipart/form-data">
                <table id="contactTable">
                    <tr>
                        <td id="contactTable"><label for="name">Name</label></td>
                        <td><input name="name" id="name" type="text" size="30" required="required"  /></td>
                    </tr>
                    <tr>
                        <td id="contactTable">Subject</td>
                        <td><input name="subject" id="subject" type="text" size="30" required="required" ></td
                    ></tr>
                    <tr>
                        <td id="contactTable"><label for="email">Email</label></td>
                        <td><input name="email" id="email" type="email" size="40" required="required" ></td>
                    </tr>
                    <tr>
                        <td id="contactTable" valign="top"><label for="message">Message</label></td>
                        <td><textarea id="message" name="message" required="required" ></textarea ></tr>
                </table>  
                <div align="center">  
                 <input id="blueButton" type="reset" value="Clear All">
                 <input id="blueButton" type="submit" value="Send Message">
            </div>    
            </form>

contactMail.php

<?php $name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
$formcontent="From: $name \n Message: $message";
$recipient = "example@hotmail.co.uk";
$subject = $_POST['subject'];
$mailheader = "From: $email \r\n";
mail($recipient, $subject, $formcontent, $mailheader) or die("Error!");
echo "Thank You!";
header ("refresh:2;url=contact.php");
?>

2 个答案:

答案 0 :(得分:0)

这取决于许多事情 - 首先,你没有说明你的“期望结果”是什么,而你没有解释发生了什么。

但是,我的假设是你想要: 1 /要发送的电子邮件 2 /消息“谢谢!”显示给用户 3/2秒后,用户被重定向到新页面:

因此,您的主要问题是您的标题 - 在将输出发送到浏览器(这是echo())后,您无法发送标题,因此您的标题()将不会被发送。

因此,您需要交换以下行:

header ("refresh:2;url=contact.php");
echo "Thank You!";

答案 1 :(得分:0)

我认为您需要通过电子邮件或电子邮件发送域名电子邮件。 例如:if&#39; xxx.com&#39;那么&#39; xxx&#39;是您的域名,因此您的域名电子邮件类似于demo@xxx.com