首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从下拉菜单获取输入到php

从下拉菜单获取输入到php
EN

Stack Overflow用户
提问于 2018-05-23 12:30:53
回答 3查看 41关注 0票数 0

我正在尝试制作一个下拉列表,并从用户那里获取三个参数,它们将存储在一个php文件中供以后使用。我当前的代码是:

代码语言:javascript
复制
<body>

  <header>

    <form action="parameter.php" method="post">

      <label class="heading">First</label>
      <select name="First">
        <option value="First-1">First-1</option>
        <option value="First-2">First-2</option>
      </select>
      <input type="submit">

    </form>


    <form action="parameter.php" method="post">
      <label class="heading">Second</label>
      <select name="Second">
        <option value="Second-1">Second-1</option>
        <option value="Second-2">Second-2</option>
      </select>
      <input type="submit">
    </form>

    <form action="parameter.php" method="post">
      <label class="heading">Third</label>
      <select name="Third">
        <option value="Third-1">Third-1</option>
        <option value="Third-2">Third-2</option>
        <input type="submit">
      </select>

    </form>


  </header>


</body>

这里的问题是,我不希望每个参数都有提交按钮,而是所有参数都应该只有一个按钮。我尝试了几种方法,但都不起作用。

我的php文件

代码语言:javascript
复制
<?php
echo $_POST['First'];
echo $_POST['Second'];
echo $_POST['Third'];
?> 

我哪里错了?

编辑:更正php代码

EN

回答 3

Stack Overflow用户

发布于 2018-05-23 12:34:38

只需将所有选择封装在一个表单中,而不是三个不同的表单中。确保input提交不在select标记内。

另外,请注意您的php代码正在尝试回显在您共享的html中不存在的参数。您选择的name将是参数名。

代码语言:javascript
复制
<form action="parameter.php" method="post">    

<label class="heading">First</label>
<select name="First" >    
  <option value="First-1">First-1</option>
  <option value="First-2">First-2</option>      
</select>


<label class="heading">Second</label>
<select name="Second" >    
  <option value="Second-1">Second-1</option>
  <option value="Second-2">Second-2</option>     
</select>

<label class="heading">Third</label>
<select name="Third" >    
  <option value="Third-1">Third-1</option>
  <option value="Third-2">Third-2</option>    
</select>

<input type="submit"> 
</form>

PHP

代码语言:javascript
复制
<?php
echo $_POST['First'];
echo $_POST['Second'];
echo $_POST['Third'];
?> 
票数 1
EN

Stack Overflow用户

发布于 2018-05-23 12:41:31

您可以在一个表单中添加所有内容

代码语言:javascript
复制
<form action="parameter.php" method="post">
        <label class="heading">First</label>
        <select name="First" >
            <option value="First-1">First-1</option>
            <option value="First-2">First-2</option>
        </select>
        <label class="heading">Second</label>
        <select name="Second" >
            <option value="Second-1">Second-1</option>
            <option value="Second-2">Second-2</option>
        </select>
        <label class="heading">Third</label>
        <select name="Third" >
            <option value="Third-1">Third-1</option>
            <option value="Third-2">Third-2</option>
            <input type="submit">
        </select>
        <input type="submit" name="submit" value="submit">
    </form> 

在你的代码中,你遗漏了"name“按钮。parameter.php代码应该是这样的。

代码语言:javascript
复制
if(isset($_POST['submit'])){
echo $First = $_POST['First'];
echo $Second = $_POST['Second'];
echo $Third = $_POST['Third'];
}
票数 0
EN

Stack Overflow用户

发布于 2018-05-23 14:22:59

代码语言:javascript
复制
<form action="parameter.php" method="post" id="frm">    

   <label class="heading">First</label>
   <select name="First" >    
       <option value="First-1">First-1</option>
       <option value="First-2">First-2</option>      
   </select>

   <label class="heading">Second</label>
   <select name="Second" >    
       <option value="Second-1">Second-1</option>
       <option value="Second-2">Second-2</option>     
   </select>

   <label class="heading">Third</label>
   <select name="Third" >    
       <option value="Third-1">Third-1</option>
       <option value="Third-2">Third-2</option>    
  </select>

  <input type="submit"> 
</form>

JQuery AJAX

代码语言:javascript
复制
<script>
    $('#frm').on('submit', function(e){
        e.preventDefault();
        $.ajax({
            url : $(this).attr('action'),
            type: "POST",
            dataType: "json",
            data : $(this).serialize(),
            success: function(data)
            {
                console.log(data)
            }
        });
    });
</script>

PHP

代码语言:javascript
复制
<?php
    echo $_POST['First'];
    echo $_POST['Second'];
    echo $_POST['Third'];
?>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50479826

复制
相关文章

相似问题

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