选择输入为空

时间:2017-02-06 05:35:02

标签: php html forms

人们可以从选择输入中选择他们的毕业年份。我把自己的选择邮寄给自己。但是,基于没有任何内容打印到控制台的事实,$_POST["year"]必须为空,这就是为什么没有实际发送给我的年份,如下图所示。我该如何解决这个问题?

enter image description here

<div class = "mailInput"> Year: 
       <div class = "select" name = "year"><select>
             <option value="2017">2017</option>
             <option value="2018">2018</option>
             <option value="2019">2019</option>
              <option value="2020">2020</option>
        </select> 
       </div>
</div>

// Assign year input to year variable
if (!empty($_POST["year"])) {
     $year = $_POST["year"];
      echo("<script>console.log('Year after: ".$year."');</script>");
} 

2 个答案:

答案 0 :(得分:1)

你写错了html代码,

<div class="mailInput"> Year: 
       <div ><select class="select" name="year"> // this line
             <option value="2017">2017</option>
             <option value="2018">2018</option>
             <option value="2019">2019</option>
              <option value="2020">2020</option>
        </select> 
       </div>
</div>

你给了div元素,它是select的父元素, 现在上面我给了选择元素的名字。 试试看。它会起作用。

答案 1 :(得分:0)

    <div class = "mailInput"> Year: 
           <div class = "select" >
            //give name for select tag not for div
             //
                    <select name = "year">
                 <option value="2017">2017</option>
                 <option value="2018">2018</option>
                 <option value="2019">2019</option>
                  <option value="2020">2020</option>
            </select> 
           </div>
    </div>

// Assign year input to year variable
if (!empty($_POST["year"])) {
     $year = $_POST["year"];
      echo("<script>console.log('Year after: ".$year."');</script>");
}