Сбор данных из разных выпадающих меню php - PullRequest
0 голосов
/ 29 мая 2011

В моей html форме у меня есть 3 выпадающих меню для даты рождения, меню дня, меню месяца и меню года.

Я хочу получить значение дня из меню дня,
значение месяца из меню месяца,
год от меню года.

в php-файле, который я написал для сбора данных о дате рождения;но это не сработало.

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

Помогите пожалуйста.

Ответы [ 2 ]

2 голосов
/ 29 мая 2011

простой пример для вас тоже учиться:)

<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 голос
/ 29 мая 2011

Что ж, похоже, вы либо не опубликовали данные (вы использовали action = "post"?), Либо у селекторов нет атрибута name.Но если ни одно из этих исправлений не решит вашу проблему, возможно, вы могли бы опубликовать оставшуюся часть вашего кода PHP и код HTML тоже.

...