PHP - Drop down

Status
Not open for further replies.

ElitePirate

Active Member
136
2009
3
80
Hi

I have one date field drop down :


PHP:
$day = $_POST['day'];
$mon = $_POST['month'];
$year = $_POST['year'];
$dob = $year . "-" . $mon . "-" . $day;
$ins = array(
'd_dob' => $dob
);



PHP:
<tr>
                    <td align="left" valign="middle">Date Of Birth<span class="astrikrequired">*</span>: </td>
                    <td align="left" valign="middle">
                    <select name="day" id="day" class="tyextfild validate-selection required">
                            <?php
                                if($day == '')
                                {
                                    $day=date(d, strtotime($d_dob));
                                }
                                $gnrl->getDropdownList(array('1','2','3','4','5','6','7','8','9','10','11','12','13','14','15','16','17','18','19','20','21','22','23','24','25','26','27','28','29','30','31'),$day);
                                ?>
                    </select>
                    <select name="month" id="month" class="tyextfild validate-selection required">
                        <?php
                            if($month == '')
                                {
                                    $month=date(m, strtotime($d_dob));
                                    
                                }
                        ?>
                              <option value="01" <?php if(in_array('01',explode(',',$month))) echo 'selected="selected"';?> >Jan</option>
                              <option value="02" <?php if(in_array('02',explode(',',$month))) echo 'selected="selected"';?>>Feb</option>
                              <option value="03" <?php if(in_array('03',explode(',',$month))) echo 'selected="selected"';?>>Mar</option>
                              <option value="04" <?php if(in_array('04',explode(',',$month))) echo 'selected="selected"';?>>Apr</option>
                              <option value="05" <?php if(in_array('05',explode(',',$month))) echo 'selected="selected"';?>>May</option>
                              <option value="06" <?php if(in_array('06',explode(',',$month))) echo 'selected="selected"';?>>Jun</option>
                              <option value="07" <?php if(in_array('07',explode(',',$month))) echo 'selected="selected"';?>>Jul</option>
                              <option value="08" <?php if(in_array('08',explode(',',$month))) echo 'selected="selected"';?>>Aug</option>
                              <option value="09" <?php if(in_array('09',explode(',',$month))) echo 'selected="selected"';?>>Sep</option>
                              <option value="10" <?php if(in_array('10',explode(',',$month))) echo 'selected="selected"';?>>Oct</option>
                              <option value="11" <?php if(in_array('11',explode(',',$month))) echo 'selected="selected"';?>>Nov</option>
                              <option value="12" <?php if(in_array('12',explode(',',$month))) echo 'selected="selected"';?>>Dec</option>
                    </select>        
                    <select name="year" id="year" class="tyextfild validate-selection required">
                            <?php
                                if($year == '')
                                {
                                    $year=date(Y, strtotime($d_dob));
                                }
                                $gnrl->getDropdownList(array('1960','1961','1962','1963','1964','1965','1966','1967','1968','1969','1970','1971','1972','1973','1974','1975','1976','1977','1978','1979','1980','1981','1982','1983','1984','1985','1986','1987','1988','1989','1990','1991','1992','1993','1994','1995','1996','1997','1998','1999','2000','2001','2002','2003','2004','2005','2006','2007','2008','2009','2010','2011','2012'),$year);
                            ?>

                </select>
                    </td>
                  </tr>



This works perfectly. After i select date/month/year,and submit, its showing the results stored in the db without any issues... now i need another date set same thing like this. for ex date/month/year drop down. i tried changing the variable names etc but still it shows incorrect date/month/year (previous data) can help me how can i create another set of this 3 dorp down without issues?

Thanks
 
3 comments
I don't understand your code but if you change the id & name of the select staement form day, month, year to 01,02,03 for each like day01 , month01 & year01 & so forth it should do 3 of them..
 
I know your thread is kinda old but I worked this up anyways.

You can try it out here using the following url:
http://inputout.org/sandbox/dropdown.php

the url will accept 'd', 'm', and 'y' as parameters
ex: http://inputout.org/sandbox/dropdown.php?d=27&m=04&y=1978

will display 27, April, 1978 in the select boxes
if nothing is passed, it will default to 1, 01, 1960

you would of course, replace the GETs with the values from your database or some POST results

hope this helps.

PHP:
<html>
<title>Dropdown Selecta</title>
<body>

<?php
$postedDay = isset($_GET['d']) ? (int)$_GET['d'] : 1;
$postedMonth = isset($_GET['m']) ? (int)$_GET['m'] : 01;
$postedYear = isset($_GET['y']) ? (int)$_GET['y'] : 1960;
?>

<select name="day" id="day" class="textfield validate-selection required">
    <?php
        $days = range(1,31);
        foreach ($days as $day) { ?>
            <option value="<?php echo $day; ?>"<?php echo $day == $postedDay ? " selected=\"selected\"" : ""; ?>><?php echo $day; ?></option>
    <?php } ?>
</select>

<select name="month" id="month" class="textfield validate-selection required">
    <?php
        $months = array('01'=>'Jan', '02'=>'Feb', '03'=>'Mar', '04'=>'Apr', '05'=>'May', '06'=>'Jun', '07'=>'Jul', '08'=>'Aug', '09'=>'Sep', '10'=>'Oct', '11'=>'Nov', '12'=>'Dec');
        foreach ($months as $key=>$value) { ?>
            <option value="<?php echo $key; ?>"<?php echo $key == $postedMonth ? " selected=\"selected\"" : ""; ?>><?php echo $value; ?></option>
        <?php } ?>
</select>

<select name="year" id="year" class="textfield validate-selection required">
    <?php
        $years = range('1960', '2012');
        foreach ($years as $year) {?>
            <option value="<?php echo $year; ?>"<?php echo $year == $postedYear ? " selected =\"selected\"" : ""; ?>><?php echo $year; ?></option>
    <?php } ?>
</select>

</body>
</html>
 
Last edited:
Status
Not open for further replies.
Back
Top