Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 电子邮件正文中未显示姓名和消息_Php_Html_Ajax_Post_Contact Form - Fatal编程技术网

Php 电子邮件正文中未显示姓名和消息

Php 电子邮件正文中未显示姓名和消息,php,html,ajax,post,contact-form,Php,Html,Ajax,Post,Contact Form,我在下面的php中创建了一个联系人表单,由于某种原因,当我提交条目时,第一个名字会显示在邮件的标题上,但不会显示在邮件的正文上。信息也是如此。有人知道这里的问题吗 PHP <?php $field_name = $_POST['first_name']; $field_last = $_POST['last_name']; $field_email = $_POST['cf_email']; $field_city = $_POST['cf_city']; $field_stat

我在下面的php中创建了一个联系人表单,由于某种原因,当我提交条目时,第一个名字会显示在邮件的标题上,但不会显示在邮件的正文上。信息也是如此。有人知道这里的问题吗

  PHP



<?php
$field_name = $_POST['first_name'];
$field_last = $_POST['last_name'];
$field_email = $_POST['cf_email'];
$field_city = $_POST['cf_city'];
$field_state = $_POST['cf_state'];
$field_postal = $_POST['cf_postal'];
$field_country = $_POST['cf_country'];
$field_profession = $_POST['cf_profession'];
$field_industry = $_POST['cf_industry'];
$field_job = $_POST['cf_job'];
$field_linkedin = $_POST['cf_linkedin'];
$field_facebook = $_POST['cf_facebook'];
$field_instagram = $_POST['cf_instagram'];
$field_message = $_POST['cf_message'];

$mail_to = 'membership@name.com';
$subject = 'Message from a site visitor '.$field_name;

$body_message = 'From: '.$field_name."\n";
$body_message = 'From: '.$field_last."\n";
$body_message .= 'E-mail: '.$field_email."\n";
$body_message .= 'City: '.$field_city."\n";
$body_message .= 'State/Province: '.$field_state."\n";
$body_message .= 'Postal: '.$field_postal."\n";
$body_message .= 'Country: '.$field_country."\n";
$body_message .= 'Profession: '.$field_profession."\n";
$body_message .= 'Industry: '.$field_industry."\n";
$body_message .= 'Job: '.$field_job."\n";
$body_message .= 'LinkedIn: '.$field_linkedin."\n";
$body_message .= 'Facebook: '.$field_facebook."\n";
$body_message .= 'Instagram: '.$field_instagram."\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('CourtSide House. Thank you for your submission');
        window.location = 'index.html';
    </script>
<?php
}
else { ?>
    <script language="javascript" type="text/javascript">
        alert('Message failed. Please, send an email to membership@name.com');
        window.location = 'index.html';
    </script>
    <?php}?>
<pre><form method="post" action="contact.php">
                    <p>Contact<p>
                    <hr>
                        <div class="row half">
                            <div class="6u"><input type="text" class="text" placeholder="First Name*" name="first_name"></div>
                            <div class="6u"><input type="text" class="text" placeholder="Last Name*" name="last_name"></div>
                            <div class="12u"><input type="text" class="text" placeholder="Email*" name="cf_email"></div>
                            <div class="4u"><input type="text" class="text" placeholder="City*" name="cf_city"></div>
                            <div class="4u"><input type="text" class="text" placeholder="State/Province*" name="cf_state"></div>
                            <div class="4u"><input type="text" class="text" placeholder="Postal Code*" name="cf_postal"></div>
                            <div class="12u"><input type="text" class="text" placeholder="Country*" name="cf_country"></div>
                            <div class="4u"><input type="text" class="text" placeholder="Profession*" name="cf_profession"></div>
                            <div class="4u"><input type="text" class="text" placeholder="Industry*" name="cf_industry"></div>
                            <div class="4u"><input type="text" class="text" placeholder="Job Title*" name="cf_job"></div>
                        </div>
                        <p>Share Some Information About Yourself*<i><small class="small" id="small" style="font-size: 12px">(Please Place Link of Social Media Profile)</small></i></p>
                            <hr>
                        <div class="row half">


                            <div class="4u"><input type="text" class="text" placeholder="LinkedIn Profile*" name="cf_linkedin"></div>
                            <div class="4u"><input type="text" class="text" placeholder="Facebook Profile*" name="cf_facebook"></div>
                            <div class="4u"><input type="text" class="text" placeholder="Instagram Profile*" name="cf_instagram"></div>
                            </div
                        ><div class="row half">
                            <div class="12u"><textarea name="message" placeholder="Message" ></textarea></div>
                        </div>
                        <div class="row">
                            <div class="12u">
                                <ul class="actions">
                                    <li><input type="submit" class="button" value="Submit"></li>

                                </ul>
                            </div>
                        </div>
                    </form></pre>
HTML


您需要附加到变量$body_消息,而不是在第二次调用时覆盖它

$body_message = 'From: '.$field_name."\n";
$body_message .= 'From: '.$field_last."\n";
$body_message = 'From: '.$field_name."\n";
$body_message .= 'From: '.$field_last."\n";
            ^^^^^
             HERE
应该是

$body_message = 'From: '.$field_name."\n";
$body_message = 'From: '.$field_last."\n";
$field_message = $_POST['cf_message'];
<textarea name="message" placeholder="Message" >

您可能将电子邮件客户端与以下内容混淆:

$body_message = 'From: '.$field_name."\n";
$body_message = 'From: '.$field_last."\n";

1变量赋值中缺少连接运算符:

应该是

$body_message = 'From: '.$field_name."\n";
$body_message = 'From: '.$field_last."\n";
$field_message = $_POST['cf_message'];
<textarea name="message" placeholder="Message" >
2您的消息字段仅称为消息:

应该是

$body_message = 'From: '.$field_name."\n";
$body_message = 'From: '.$field_last."\n";
$field_message = $_POST['cf_message'];
<textarea name="message" placeholder="Message" >
或改变

<textarea name="cf_message" placeholder="Message" >


消息未显示,因为检索时使用了错误的键

更新如下:

$body_message = 'From: '.$field_name."\n";
$body_message .= 'From: '.$field_last."\n";  // Use .= not just =
然后,不会显示第一个名称,因为在您将$body_消息分配给“发件人:”。$field_name之后,您正在覆盖$body_消息。\n

更新如下: