从不同的下拉菜单收集数据php

时间:2011-05-28 21:03:24

标签: php forms select input

在我的html表单中,我有3个下拉菜单,包括出生日期,日期菜单,月份菜单和年份菜单。

我想从日间菜单中收集日期值,
   月份菜单中的月份值,
   年份菜单。

我写的用于收集出生日期数据的php文件中的

;但它不起作用。

$date = $_POST['day'] . "-" . $_POST['month'] . "-" . $_POST['year'];

请帮助。

2 个答案:

答案 0 :(得分:2)

一个简单的例子,你也可以学习:)

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>date example</title>
</head>
<body>

<?php
if(isset($_POST['day']) && isset($_POST['month']) && isset($_POST['year'])){
    echo 'You selected: '.$_POST['day'].'-'.$_POST['month'].'-'.$_POST['year'];
}
?>

<form method="POST" action="">
  <p><select size="1" name="day">
  <?php formDay(); ?>
  </select>-
  <select size="1" name="month">
  <?php formMonth(); ?>
  </select>-
  <select size="1" name="year">
  <?php formYear(); ?>
  </select> <input type="submit" value="Submit"></p>
</form>
</body>
</html>

<?php
//functions to loop day,month,year
function formDay(){
    for($i=1; $i<=31; $i++){
        echo '<option value="'.$i.'">'.$i.'</option>'."\n";
    }
}

function formMonth(){
    $month = strtotime('2011-01-01');
    $end = strtotime('2012-01-01');
    while($month < $end){
        echo '<option value="'.date('F', $month).'">'.date('F', $month).'</option>'."\n";
        $month = strtotime("+1 month", $month);
    }
}

function formYear(){
    for($i=1980; $i<=date('Y'); $i++){
        echo '<option value="'.$i.'">'.$i.'</option>'."\n";
    }
}

?>

答案 1 :(得分:1)

好吧,似乎你没有发布数据(你是使用action =“post”?)还是选择没有name属性。但如果两个修复程序都没有解决您的问题,也许您可​​以发布其余的PHP代码和HTML代码。