首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使复选框以联系人形式显示

如何使复选框以联系人形式显示
EN

Stack Overflow用户
提问于 2015-09-23 15:01:22
回答 2查看 94关注 0票数 0

我对PHP的编码相当陌生。目前,我有一个问题,我的复选框和下拉框提交在我的联系表格。

我正在使用Bootstrap来构建这个站点。

我已经研究了答案,我一直无法找到为什么我的复选框不会出现在我的电子邮件。

下面是我的代码:

这里是PHP:

代码语言:javascript
复制
if (isset($_POST["submit"])) {
    $branch = $_POST['Toledo Branch, Columbus Branch'];
    $name = $_POST['name'];
    $companyname = $_POST['companyname'];
    $title = $_POST['title'];
    $email = $_POST['email'];
    $phone = $_POST['phone'];
    $contacting = $_POST['Services/Solutions, Quote Request, Service Request, Other '];
    $area = $_POST['area-0, area-1, area-2, area-3, area-4, area-5 '];
    $comment = $_POST['comment'];
    $from = 'ProVideo Website'; 
    $to = 'samantha@provideosystems.com'; 
    $subject = 'Message from ProVideo Contact Form ';

    $body = "Branch: $branch \ 
            From: $name \ 
            Company: $companyname \ 
            Title: $title \ 
            E-Mail: $email \ 
            Phone Number: $phone\ 
            Contacting About: $contacting \ 
            Interest: $area \
            Comment: $comment";

    // Check if name has been entered
    if (!$_POST['name']) {
        $errName = 'Please enter your name';
    }

    // Check if email has been entered and is valid
    if (!$_POST['email'] || !filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) {
        $errEmail = 'Please enter a valid email address';
    }

    // If there are no errors, send the email
    if (!$errBranch && !$errName && !$errCompanyname && !$errTitle && !$errEmail && !$errPhone && !$errArea && !$errComment ) {
        if (mail ($to, $subject, $body, $from)) {
            $result='<div class="alert alert-success">Thank You! We have received your message </div>';
        } else {
            $result='<div class="alert alert-danger">Sorry there was an error sending your message. Please try again later</div>';
        }
    }
}

这里是联系方式:

代码语言:javascript
复制
<h3>Contact Us!</h3>

<div class="form-group">
  <label class="col-md-4 control-label" for="branch">Choose a Branch to Contact</label>
  <div class="col-md-5">
    <select id="contacting" name="contacting" class="form-control">
      <option value="1">Toledo Branch</option>
      <option value="2">Columbus Branch</option>


    </select>
  </div>
</div>

<!-- Text input-->

<div class="form-group">

  <label class="col-md-4 control-label" for="name">Name</label>  

  <div class="col-md-5">
  <input id="name" name="name" type="text" placeholder="First, Last" class="form-control input-md" required=""/>
    <?php echo "<p class='text-danger'>$errName</p>";?>
  </div>
</div>

<!-- Text input-->
<div class="form-group">
  <label class="col-md-4 control-label" for="companyname">Company Name</label>  
  <div class="col-md-5">
  <input id="companyname" name="companyname" type="text" placeholder="" class="form-control input-md" required=""/>

  </div>
</div>

<!-- Text input-->
<div class="form-group">
  <label class="col-md-4 control-label" for="title">Title</label>  
  <div class="col-md-5">
  <input id="title" name="title" type="text" placeholder="" class="form-control input-md"/>

  </div>
</div>

<!-- Text input-->
<div class="form-group">
  <label class="col-md-4 control-label" for="email">Email</label>  
  <div class="col-md-5">
  <input id="email" name="email" type="text" placeholder="name@email.com" class="form-control input-md" required=""/>

  </div>
</div>

<!-- Text input-->
<div class="form-group">
  <label class="col-md-4 control-label" for="phone">Phone </label>  
  <div class="col-md-5">
  <input id="phone" name="phone" type="text" placeholder="(XXX) XXX-XXXX" class="form-control input-md" required=""/>

  </div>
</div>

<!-- Select Basic -->
<div class="form-group">
  <label class="col-md-4 control-label" for="contacting">I am contacting about...</label>
  <div class="col-md-5">
    <select id="contacting" name="contacting" class="form-control">
      <option value="1">Services/Solutions</option>
      <option value="2">Quote Request</option>
      <option value="">Service Request</option>
       <option value="">Other</option>
    </select>
  </div>
</div>

<!-- Multiple Checkboxes -->
<div class="form-group">
  <label class="col-md-4 control-label" for="area">Area of Interest</label>
  <div class="col-md-4">
  <div class="checkbox">
    <label for="area-0">
      <input type="checkbox" name="area" id="area-0" value="1"/>
      Corporate
    </label>
    </div>
  <div class="checkbox">
    <label for="area-1">
      <input type="checkbox" name="area" id="area-1" value="2"/>
      Education
    </label>
    </div>
  <div class="checkbox">
    <label for="area-2">
      <input type="checkbox" name="area" id="area-2" value=""/>
      House of Worship
    </label>
    </div>
  <div class="checkbox">
    <label for="area-3">
      <input type="checkbox" name="area" id="area-3" value=""/>
      Government
    </label>
    </div>
  <div class="checkbox">
    <label for="area-4">
      <input type="checkbox" name="area" id="area-4" value=""/>
      Sports Venue
    </label>
    <div class="checkbox">
    <label for="area-5">
      <input type="checkbox" name="area" id="area-4" value=""/>
      Other
    </label>
    </div>
    </div>
  </div>
</div>

<!-- Textarea -->
<div class="form-group">
  <label class="col-md-4 control-label" for="comment">Comments</label>
  <div class="col-md-4">                     
    <textarea class="form-control" id="comment" name="comment"></textarea>
  </div>
</div>

<!-- Button -->
<div class="form-group">
  <label class="col-md-4 control-label" for="submit"></label>
  <div class="col-md-4">
<button id="submit" name="submit" class="btn btn-primary">Submit</button>
    </div>
</div>
 <div class="form-group">
        <div class="col-sm-10">

        </div>
    </div>

</form>
</div>
EN

回答 2

Stack Overflow用户

发布于 2015-09-23 15:14:10

如果希望它们在消息中显示,请将信息放入值中。我还会使名称成为一个数组,以便您可以使用前程循环遍历所有复选框,以便将它们包含在电子邮件中。

代码语言:javascript
复制
 <div class="checkbox">
<label for="area-4">
  <input type="checkbox" name="area[]" id="area-4" value="Sports Venue"/>
  Sports Venue
</label>
票数 1
EN

Stack Overflow用户

发布于 2015-09-23 15:14:22

你不能用这个

代码语言:javascript
复制
$contacting = $_POST['Services/Solutions, Quote Request, Service Request, Other '];

$area = $_POST['area-0, area-1, area-2, area-3, area-4, area-5 '];

如果要检索值,则应使用form元素的名称。在本例中,由于PHP无法识别那些数组键,所以什么也得不到。

代码语言:javascript
复制
$area = $_POST['area'];

它可能是1234等等,但我在您的HTML代码中注意到,对于所有区域的其余复选框,您没有一个值,因此修复它会有所帮助。

对这条线也是一样的

代码语言:javascript
复制
$_POST['Services/Solutions, Quote Request, Service Request, Other '];

您只需检索该值并使用它做您想做的事情,但是要使用以下方法:$contacting =$_POST‘instead’;

以下是小贴士:

如果您没有使用更高级的数据处理,您可以简单地将选项元素的值保留为空,$_POST‘联系人’;变量将返回字符串内部标记。

例如:

代码语言:javascript
复制
<select name="contacting">
    <option>This option</option>
    <option>Another option</option>
    <option>Tacos y Quesadillas</option>
</select>

无论我选择什么,都将作为这些字符串之一发送到PHP,而不是值。它将更容易连接到您的电子邮件正文。

使用复选框,您将需要值,实际上,只是,而不是数字,使用字符串使它更容易再次,连接到您的电子邮件正文。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32743056

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档