【问题标题】:Contact form doesn't function [duplicate]联系表格不起作用[重复]
【发布时间】:2019-11-27 18:18:53
【问题描述】:

我正在与 Blogger 合作,我是初学者。我想将此联系表添加到我的网站:https://codepen.io/JonLehman/pen/yOdbOG

我可以添加它,但如何让它发挥作用?我认为我需要在 html 中添加一些内容以将书面文本发送到我的电子邮件地址?谢谢

body {
  background-color: #444442;
  padding-top: 85px;
}

h1 {
  font-family: 'Poppins', sans-serif, 'arial';
  font-weight: 600;
  font-size: 72px;
  color: white;
  text-align: center;
}

h4 {
  font-family: 'Roboto', sans-serif, 'arial';
  font-weight: 400;
  font-size: 20px;
  color: #9b9b9b;
  line-height: 1.5;
}


/* ///// inputs /////*/

input:focus~label,
textarea:focus~label,
input:valid~label,
textarea:valid~label {
  font-size: 0.75em;
  color: #999;
  top: -5px;
  -webkit-transition: all 0.225s ease;
  transition: all 0.225s ease;
}

.styled-input {
  float: left;
  width: 293px;
  margin: 1rem 0;
  position: relative;
  border-radius: 4px;
}

@media only screen and (max-width: 768px) {
  .styled-input {
    width: 100%;
  }
}

.styled-input label {
  color: #999;
  padding: 1.3rem 30px 1rem 30px;
  position: absolute;
  top: 10px;
  left: 0;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
  pointer-events: none;
}

.styled-input.wide {
  width: 650px;
  max-width: 100%;
}

input,
textarea {
  padding: 30px;
  border: 0;
  width: 100%;
  font-size: 1rem;
  background-color: #2d2d2d;
  color: white;
  border-radius: 4px;
}

input:focus,
textarea:focus {
  outline: 0;
}

input:focus~span,
textarea:focus~span {
  width: 100%;
  -webkit-transition: all 0.075s ease;
  transition: all 0.075s ease;
}

textarea {
  width: 100%;
  min-height: 15em;
}

.input-container {
  width: 650px;
  max-width: 100%;
  margin: 20px auto 25px auto;
}

.submit-btn {
  float: right;
  padding: 7px 35px;
  border-radius: 60px;
  display: inline-block;
  background-color: #4b8cfb;
  color: white;
  font-size: 18px;
  cursor: pointer;
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.06), 0 2px 10px 0 rgba(0, 0, 0, 0.07);
  -webkit-transition: all 300ms ease;
  transition: all 300ms ease;
}

.submit-btn:hover {
  transform: translateY(1px);
  box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.10), 0 1px 1px 0 rgba(0, 0, 0, 0.09);
}

@media (max-width: 768px) {
  .submit-btn {
    width: 100%;
    float: none;
    text-align: center;
  }
}

input[type=checkbox]+label {
  color: #ccc;
  font-style: italic;
}

input[type=checkbox]:checked+label {
  color: #f00;
  font-style: normal;
}
<div class="container">
  <div class="row">
    <h1>contact us</h1>
  </div>
  <div class="row">
    <h4 style="text-align:center">We'd love to hear from you!</h4>
  </div>
  <div class="row input-container">
    <div class="col-xs-12">
      <div class="styled-input wide">
        <input type="text" required />
        <label>Name</label>
      </div>
    </div>
    <div class="col-md-6 col-sm-12">
      <div class="styled-input">
        <input type="text" required />
        <label>Email</label>
      </div>
    </div>
    <div class="col-md-6 col-sm-12">
      <div class="styled-input" style="float:right;">
        <input type="text" required />
        <label>Phone Number</label>
      </div>
    </div>
    <div class="col-xs-12">
      <div class="styled-input wide">
        <textarea required></textarea>
        <label>Message</label>
      </div>
    </div>
    <div class="col-xs-12">
      <div class="btn-lrg submit-btn">Send Message</div>
    </div>
  </div>
</div>

【问题讨论】:

  • 如果不通过某种邮件服务器,您无法直接从客户端/浏览器发送电子邮件。

标签: html css codepen


【解决方案1】:

使用您想要的任何 css 代码创建联系表单的最简单方法是使用 google 电子表格 api。你必须只有一个公开发布的谷歌电子表格,你使用一个将数据发送到这个电子表格的 html 表单,就像联系博主表单一样,但我认为更好,因为你有一个实时注释来发表评论......与博主联系最近使用的表格,它不起作用,但我知道电子邮件接收是在一天中的特定时间完成的......

【讨论】:

    【解决方案2】:

    我建议使用 PHP。有很多很棒的教程,但这里有一个不太复杂。

    https://www.codexworld.com/create-simple-contact-form-php-send-email/

    如果您迷路了,请随时提出问题。您需要能够访问 XAAMP 或服务器来测试您的工作。

    你的 PHP 应该看起来像这样。

    <?php
    error_reporting(-1);
    ini_set('display_errors', 'On');
    set_error_handler("var_dump");
    $myemail = 'yourEmailGoesHere';
    $name = check_input($_POST['name'], "Enter your name");
    $subject = check_input($_POST['subject'], "Enter a subject");
    $email = check_input($_POST['email']);
    $message = check_input($_POST['message'], "Write your message");
    if (!preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/", $email))
    {
    show_error("E-mail address not valid");
    }
    $message = "
    Name: $name
    E-mail: $email
    Subject: $subject
    Message:
    $message
    ";
    mail($myemail, $subject, $message);
    header('Location: thanks.php');
    exit();
    function check_input($data, $problem='')
    {
    $data = trim($data);
    $data = stripslashes($data);
    $data = htmlspecialchars($data);
    if ($problem && strlen($data) == 0)
    {
    show_error($problem);
    }
    return $data;
    }
    function show_error($myError)
    {
    ?>
    <html>
    <body>
      <p>FAIL! Please correct the following error:</p>
      <strong><?php echo $myError; ?></strong>
      <p>You may close this window and try again</p>
    </body>
     </html>
     <?php
    exit();
    }
    ?>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-07-22
      • 1970-01-01
      • 2012-10-04
      • 2014-03-31
      • 2016-10-28
      • 2014-10-04
      • 2014-05-25
      相关资源
      最近更新 更多