【问题标题】:How do i write the html and php code that sends form filled on my website to my email?我如何编写将我网站上填写的表格发送到我的电子邮件的 html 和 php 代码?
【发布时间】:2022-11-20 22:10:21
【问题描述】:

我编写了 html 代码和 php 代码,将我网站的访问者填写的表单发送到我的电子邮件,但这些代码不起作用,我需要有人告诉我我哪里错了,并可能帮助更正代码

这是我写的 HTML 代码

<div style="padding:20px" class="col-sm-7">
                    <h2 >Become a Volunteer</h2> <br>
          <form id="fcf-form-id" class="fcf-form-class" method="post" action="volunteer.php">
                    <div class="row cont-row">
                        <div  class="col-sm-3"><label for="Position">Volunteer Position </label><span>:</span></div>
                        <div class="col-sm-8"><input type="text" id="Position" placeholder="Tell us what you are volunteering for" name="Position" class="form-control input-sm" required ></div>
                    </div>
                    <div class="row cont-row">
                        <div  class="col-sm-3"><label for="Name">Full Name </label><span>:</span></div>
                        <div class="col-sm-8"><input type="text" id="Name" placeholder="Enter Name" name="Name" class="form-control input-sm" pattern=[A-Z\sa-z]{4,30} required ></div>
                    </div>
                    <div  class="row cont-row">
                        <div  class="col-sm-3"><label for="Email">Email Address </label><span>:</span></div>
                        <div class="col-sm-8"><input type="email" id="Email" name="Email" placeholder="Enter Email Address" class="form-control input-sm" required ></div>
                    </div>
                    <div  class="row cont-row">
                        <div  class="col-sm-3"><label for="Number">Mobile Number</label><span>:</span></div>
                        <div class="col-sm-8"><input type="tel" id="Number" name="Number" placeholder="Enter Mobile Number" class="form-control input-sm" required  ></div>
                    </div>
                    <div class="row cont-row">
                        <div  class="col-sm-3"><label for="Address">Address </label><span>:</span></div>
                        <div class="col-sm-8"><input type="text" id="Address" placeholder="Your residential address" name="Address" class="form-control input-sm" required ></div>
                    </div>
                    <div  class="row cont-row">
                        <div  class="col-sm-3"><label for="State">Enter State </label><span>:</span></div>
                        <div class="col-sm-8"><input type="text" id="State" name="State" placeholder="Your State of Residence" class="form-control input-sm" required ></div>
                    </div>
                    <div  class="row cont-row">
                        <div  class="col-sm-3"><label for="Country">Enter Country</label><span>:</span></div>
                        <div class="col-sm-8"><input type="text" id="Country" name="Country" placeholder="Your Country of Residence" class="form-control input-sm" required  ></div>
                    </div>
                    <div class="row cont-row">
                        <div  class="col-sm-3"><label for="Occupation">Occupation </label><span>:</span></div>
                        <div class="col-sm-8"><input type="text" id="Occupation" placeholder="Enter Occupation" name="Occupation" class="form-control input-sm" required ></div>
                    </div>
                    <div  class="row cont-row">
                        <div  class="col-sm-3"><label for="Experience">Volunteer Xpernce.</label><span>:</span></div>
                        <div class="col-sm-8"><input type="text" id="Experience" name="Experience" placeholder="Your previous volunteer experience / Optional " class="form-control input-sm" ></div>
                    </div>
                    <div  class="row cont-row">
                        <div  class="col-sm-3"><label for="Languages">Languages Spoken</label><span>:</span></div>
                        <div class="col-sm-8"><input type="text" id="Languages" name="Languages" placeholder="Tell us the language(s) you speak fluently" class="form-control input-sm" required  ></div>
                    </div>
                    <div  class="row cont-row">
                        <div  class="col-sm-3"><label for="Gender">Gender</label><span>:</span></div>
                        <div class="col-sm-8"><select id="Gender" name="Gender" class="form-control input-sm" required>
                                                <option Value="">Select your Gender</option>
                                                <option value="male">Male</option>
                                                <option value="female">Female</option>
                                                <option value="Other">Other</option>
                                              </select>
                        </div>
                    </div>
                    <div  class="row cont-row">
                        <div  class="col-sm-3"><label for="Dob">Date of Birth</label><span>:</span></div>
                        <div class="col-sm-8"><input type="date" id="Dob" name="Dob" placeholder="Enter your Date of Birth" class="form-control input-sm" required  ></div>
                    </div>
                    <div  class="row cont-row">
                        <div  class="col-sm-3"><label for="Info">Other information</label><span>:</span></div>
                        <div class="col-sm-8">
                            <textarea rows="5" id="Info" placeholder="Enter other information that enable us make a good match" class="form-control input-sm" ></textarea>
                        </div>
                    </div>
                    <div style="margin-top:10px;" class="row">
                        <div style="padding-top:10px;" class="col-sm-3"><label></label></div>
                        <div class="col-sm-8">
                            <button type="submit" id="fcf-button" class="btn btn-primary btn-sm">Submit</button>
                        </div>
                    </div>
                </div>

这是我写的 php 代码

&lt;?php if (isset($_POST['Email'])) {

// EDIT THE FOLLOWING TWO LINES: $email_to = "adurotoluwa.ngo.info@gmail.com"; $email_subject = "Volunteer form submissions";

function problem($error) { echo "We're sorry, but there were error(s) found with the form you submitted. "; echo "These errors appear below.\&lt;br\&gt;\&lt;br\&gt;"; echo $error . "\&lt;br\&gt;\&lt;br\&gt;"; echo "Please go back and fix these errors.\&lt;br\&gt;\&lt;br\&gt;"; die(); }

// validation expected data exists if ( !isset($\_POST\['Position'\]) || !isset($\_POST\['Name'\]) || !isset($\_POST\['Email'\]) || !isset($\_POST\['Number'\]) || !isset($\_POST\['Address'\]) || !isset($\_POST\['State'\]) || !isset($\_POST\['Country'\]) || !isset($\_POST\['Occupation'\]) || !isset($\_POST\['Experience'\]) || !isset($\_POST\['Languages'\]) || !isset($\_POST\['Gender'\]) || !isset($\_POST\['Dob'\]) || !isset($\_POST\['Info'\]) ) { problem('We're sorry, but there appears to be a problem with the form you submitted.'); } $position = $\_POST\['Position'\]; // required $name = $\_POST\['Name'\]; // required $email = $\_POST\['Email'\]; // required $number = $\_POST\['Number'\]; // required $address = $\_POST\['Address'\]; // required $state = $\_POST\['State'\]; // required $country = $\_POST\['Country'\]; // required $occupation = $\_POST\['Occupation'\]; // required $experience = $\_POST\['Experience'\]; // $languages = $\_POST\['Languages'\]; // required $gender = $\_POST\['Gender'\]; // required $dob = $\_POST\['Dob'\]; // required $info = $\_POST\['Info'\]; // $error_message = ""; $email_exp = '/^\[A-Za-z0-9.\_%-\]+@\[A-Za-z0-9.-\]+\\.\[A-Za-z\]{2,4}$/';

if (!preg_match($email_exp, $email)) { $error_message .= 'The Email address you entered does not appear to be valid.\&lt;br\&gt;'; }

$string_exp = "/^\[A-Za-z .'-\]+$/";

if (!preg_match($string_exp, $name)) { $error_message .= 'The Name you entered does not appear to be valid.\&lt;br\&gt;'; }

if (strlen($message) \&lt; 2) { $error_message .= 'The Message you entered do not appear to be valid.\&lt;br\&gt;'; }

if (strlen($error_message) \&gt; 0) { problem($error_message); }

$email_message = "Form details below.\\n\\n";

function clean_string($string) { $bad = array("content-type", "bcc:", "to:", "cc:", "href"); return str_replace($bad, "", $string); }

$email_message .= "Position: " . clean_string($position) . "\\n"; $email_message .= "Name: " . clean_string($name) . "\\n"; $email_message .= "Email: " . clean_string($email) . "\\n"; $email_message .= "Number: " . clean_string($number) . "\\n"; $email_message .= "Address: " . clean_string($address) . "\\n"; $email_message .= "State: " . clean_string($state) . "\\n"; $email_message .= "Country: " . clean_string($country) . "\\n"; $email_message .= "Occupation: " . clean_string($occupation) . "\\n"; $email_message .= "Experience: " . clean_string($experience) . "\\n"; $email_message .= "Languages: " . clean_string($languages) . "\\n"; $email_message .= "Gender: " . clean_string($gender) . "\\n"; $email_message .= "Dob: " . clean_string($dob) . "\\n"; $email_message .= "Info: " . clean_string($info) . "\\n";

// create email headers $headers = 'From: ' . $email . "\\r\\n" . 'Reply-To: ' . $email . "\\r\\n" . 'X-Mailer: PHP/' . phpversion(); @mail($email_to, $email_subject, $email_message, $headers); ?&gt; \&lt;!-- INCLUDE YOUR SUCCESS MESSAGE BELOW --\&gt;

Thanks for volunteering. We'll get back to you soon. &lt;?php}?&gt;

【问题讨论】:

  • 请编辑您的问题并以正确的方式格式化 php 代码。
  • 欢迎。请检查您的问题,它看起来很混乱,尤其是对于 PHP 代码部分。 edit 它并让自己熟悉格式化它的界面。另外检查help center,了解如何进一步改进您的问题,例如它如何从一个最小的例子中受益来重现。

标签: php html web


【解决方案1】:

尝试这个

<div style="padding:20px" class="col-sm-7">
    <h2>Become a Volunteer</h2>
    <br>
    <form id="fcf-form-id" class="fcf-form-class" method="post" action="volunteer.php">
        <div class="row cont-row">
            <div class="col-sm-3">
                <label for="Position">Volunteer Position </label><span>:</span></div>
            <div class="col-sm-8">
                <input type="text" id="Position" placeholder="Tell us what you are volunteering for" name="Position" class="form-control input-sm" required>
            </div>
        </div>
        <div class="row cont-row">
            <div class="col-sm-3">
                <label for="Name">Full Name </label><span>:</span></div>
            <div class="col-sm-8">
                <input type="text" id="Name" placeholder="Enter Name" name="Name" class="form-control input-sm" pattern=[A-Zsa-z]{4,30} required>
            </div>
        </div>
        <div class="row cont-row">
            <div class="col-sm-3">
                <label for="Email">Email Address </label><span>:</span></div>
            <div class="col-sm-8">
                <input type="email" id="Email" name="Email" placeholder="Enter Email Address" class="form-control input-sm" required>
            </div>
        </div>
        <div class="row cont-row">
            <div class="col-sm-3">
                <label for="Number">Mobile Number</label><span>:</span></div>
            <div class="col-sm-8">
                <input type="tel" id="Number" name="Number" placeholder="Enter Mobile Number" class="form-control input-sm" required>
            </div>
        </div>
        <div class="row cont-row">
            <div class="col-sm-3">
                <label for="Address">Address </label><span>:</span></div>
            <div class="col-sm-8">
                <input type="text" id="Address" placeholder="Your residential address" name="Address" class="form-control input-sm" required>
            </div>
        </div>
        <div class="row cont-row">
            <div class="col-sm-3">
                <label for="State">Enter State </label><span>:</span></div>
            <div class="col-sm-8">
                <input type="text" id="State" name="State" placeholder="Your State of Residence" class="form-control input-sm" required>
            </div>
        </div>
        <div class="row cont-row">
            <div class="col-sm-3">
                <label for="Country">Enter Country</label><span>:</span></div>
            <div class="col-sm-8">
                <input type="text" id="Country" name="Country" placeholder="Your Country of Residence" class="form-control input-sm" required>
            </div>
        </div>
        <div class="row cont-row">
            <div class="col-sm-3">
                <label for="Occupation">Occupation </label><span>:</span></div>
            <div class="col-sm-8">
                <input type="text" id="Occupation" placeholder="Enter Occupation" name="Occupation" class="form-control input-sm" required>
            </div>
        </div>
        <div class="row cont-row">
            <div class="col-sm-3">
                <label for="Experience">Volunteer Xpernce.</label><span>:</span></div>
            <div class="col-sm-8">
                <input type="text" id="Experience" name="Experience" placeholder="Your previous volunteer experience / Optional " class="form-control input-sm">
            </div>
        </div>
        <div class="row cont-row">
            <div class="col-sm-3">
                <label for="Languages">Languages Spoken</label><span>:</span></div>
            <div class="col-sm-8">
                <input type="text" id="Languages" name="Languages" placeholder="Tell us the language(s) you speak fluently" class="form-control input-sm" required>
            </div>
        </div>
        <div class="row cont-row">
            <div class="col-sm-3">
                <label for="Gender">Gender</label><span>:</span></div>
            <div class="col-sm-8">
                <select id="Gender" name="Gender" class="form-control input-sm" required>
                    <option Value="">Select your Gender</option>
                    <option value="male">Male</option>
                    <option value="female">Female</option>
                    <option value="Other">Other</option>
                </select>
            </div>
        </div>
        <div class="row cont-row">
            <div class="col-sm-3">
                <label for="Dob">Date of Birth</label><span>:</span></div>
            <div class="col-sm-8">
                <input type="date" id="Dob" name="Dob" placeholder="Enter your Date of Birth" class="form-control input-sm" required>
            </div>
        </div>
        <div class="row cont-row">
            <div class="col-sm-3">
                <label for="Info">Other information</label><span>:</span></div>
            <div class="col-sm-8">
                <textarea rows="5" id="Info" placeholder="Enter other information that enable us make a good match" class="form-control input-sm"></textarea>
            </div>
        </div>
        <div style="margin-top:10px;" class="row">
            <div style="padding-top:10px;" class="col-sm-3">
                <label></label>
            </div>
            <div class="col-sm-8">
                <button type="submit" id="fcf-button" class="btn btn-primary btn-sm">Submit</button>
            </div>
        </div>
    </form>
</div>

并创建 php 文件 志愿者.php


<?php var_dump($_POST) ?>

您将在 var_dump 中看到所有帖子

【讨论】:

  • 如果您有需要澄清的问题实际上回答问题,使用cmets。如果您还没有足够的声誉来发表评论,请使用投票(例如,无法回答的编程问题没有帮助,请投反对票)。如果您问自己为什么会这样(以及为什么这样很好),请咨询help center
猜你喜欢
  • 2011-11-08
  • 2021-04-29
  • 1970-01-01
  • 2018-12-14
  • 2016-11-23
  • 1970-01-01
  • 2014-02-01
  • 1970-01-01
  • 2015-09-04
相关资源
最近更新 更多