如何使我的html代码和php联系人表单文件正常工作?

如何使我的html代码和php联系人表单文件正常工作?,php,html,Php,Html,我在使用contact.php表单时遇到问题。以前,我根本没有将邮件发送到我的电子邮件,现在,邮件确实被发送了,这就是它显示的全部内容: From: E-mail: Message: 发件人: 电邮: 信息: 这是我的html表单: <form role="form" class="form-alt" action="contact.php" method="post"> <div class="form-group">

我在使用contact.php表单时遇到问题。以前,我根本没有将邮件发送到我的电子邮件,现在,邮件确实被发送了,这就是它显示的全部内容:

From: E-mail: Message: 发件人: 电邮: 信息: 这是我的html表单:

<form role="form" class="form-alt" action="contact.php" method="post">
            <div class="form-group">
                <label for="name" class="sr-only">name</label>
                <input type="text" class="form-control" id="name" placeholder="Name (Required)">
            </div>
            <div class="form-group">
                <label for="email" class="sr-only">Email</label>
                <input type="email" class="form-control" id="email" placeholder="Email (Required)">
            </div>
            <div class="form-group">
                <label for="subject" class="sr-only">Subject</label>
                <input type="text" class="form-control" id="subject" placeholder="Subject">
            </div>
            <div class="form-group">
                <label for="message" class="sr-only">message</label>
                <textarea id="message" class="form-control" cols="30" rows="7" placeholder="Message"></textarea>
            </div>
            <button type="submit" class="btn btn-default">Enviar</button>
        </form>

        </div>

名称
电子邮件
主题
消息
羡慕
这是PHP联系人文件:

<?php
$field_name = $_POST['cf_name'];
$field_email = $_POST['cf_email'];
$field_message = $_POST['cf_message'];

$mail_to = 'mail@example.com';
$subject = 'Message from a site visitor '.$field_name;

$body_message = 'From: '.$field_name."\n";
$body_message .= 'E-mail: '.$field_email."\n";
$body_message .= 'Message: '.$field_message;

$headers = 'From: '.$field_email."\r\n";
$headers .= 'Reply-To: '.$field_email."\r\n";

$mail_status = mail($mail_to, $subject, $body_message, $headers);

if ($mail_status) { ?>
    <script language="javascript" type="text/javascript">
        alert('Thank you for the message. We will contact you shortly.');
        window.location = 'contact_page.html';
    </script>
<?php
}
else { ?>
    <script language="javascript" type="text/javascript">
        alert('Message failed. Please, send an email to gordon@template-help.com');
        window.location = 'contact_page.html';
    </script>
<?php
}
?>

警报('谢谢您的消息。我们将很快与您联系');
window.location='contact_page.html';
警报('消息失败。请发送电子邮件至gordon@template-help.com),;
window.location='contact_page.html';

您需要为每个表单元素指定一个name属性。例如:

<input type="email" class="form-control" id="email" placeholder="Email (Required)">

应该是:

<input type="email" name="cf_email" class="form-control" id="email" placeholder="Email (Required)">


您的代码,例如,
$field\u email=$\u POST['cf\u email']
正在查找名为
cf\u email
的输入元素。如果没有它,您将得到一个空值。

您需要为每个表单元素指定一个name属性。例如:

<input type="email" class="form-control" id="email" placeholder="Email (Required)">

应该是:

<input type="email" name="cf_email" class="form-control" id="email" placeholder="Email (Required)">


您的代码,例如,
$field\u email=$\u POST['cf\u email']
正在查找名为
cf\u email
的输入元素。如果没有它,您将得到一个空白值。

+1为了清楚起见,发布的变量使用“name”属性而不是id。在HTML中使用id没有什么错,因为它看起来更有用、更一致,但用户必须为表单字段提供name属性,以便在提交时以这种方式发送。+1为了清楚起见,发布的变量使用“name”属性,而不是id。在HTML中使用id没有什么错,因为它看起来更有用、更一致,但用户必须为表单字段提供name属性,以便在提交时以这种方式发送。