Version: 1
Type: Function
Category: Calendars/Dates
License: GNU General Public License
Description: generates an HTML select list that defaults to the current date or date/time, or sets the date or date/time to user specified values.
$name is the select list base name. each select list will have either y (year) m (month) d (day) h (hour) or i (minute) immediately following the base name.
variables $y, $m, $d, $h, $i, can be passed into the function in order for it to default to a certain date or date/time.
<?php function generatedateselect($name,$y, $m, $d) { $now=1; if ( ($y>0) && ($m>0) && ($d>0) ) { $now=0; } $months=array('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sept','Oct','Nov','Dec'); $r=''; $r.='<select name="'.$name.'d">'; for ($x=1;$x<=31;$x++) { $r.='<option value="'.$x.'"'; if ($now) { if ($x==date("d")) { $r.=' SELECTED '; } } else { if ($x==$d) { $r.=' SELECTED '; } } $r.='>'.$x.'</option>'; } $r.='</select> '; $r.='<select name="'.$name.'m">'; for ($x=1;$x<=12;$x++) { $r.='<option value="'.$x.'"'; if ($now) { if ($x==date("m")) { $r.=' SELECTED '; } } else { if ($x==$m) { $r.=' SELECTED '; } } $r.='>'.$months[$x-1].'</option>'; } $r.='</select> '; $r.='<select name="'.$name.'y">'; for ($x=2008;$x<=2018;$x++) { $r.='<option value="'.$x.'"'; if ($now) { if ($x==date("Y")) { $r.=' SELECTED '; } } else { if ($x==$y) { $r.=' SELECTED '; } } $r.='>'.$x.'</option>'; } $r.='</select> '; return $r; } function generatedatetimeselect($name, $y, $m, $d, $h, $i) { $now=1; if ( ($y>0) && ($m>0) && ($d>0) && ($h>=0) && ($i>=0) ) { $now=0; } $r=generatedateselect($name,$y,$m,$d); $r.='<select name="'.$name.'h">'; for ($x=0;$x<=23;$x++) { $r.='<option value="'.$x.'"'; if ($now) { if ($x==date("H")) { $r.=' SELECTED '; } } else { if ($x==$h) { $r.=' SELECTED '; } } $r.='>'.$x.'</option>'; } $r.='</select> '; $r.='<select name="'.$name.'i">'; for ($x=0;$x<=59;$x++) { $r.='<option value="'.$x.'"'; if ($now) { if ($x==date("i")) { $r.=' SELECTED '; } } else { if ($x==$i) { $r.=' SELECTED '; } } $r.='>'.$x.'</option>'; } $r.='</select> '; return $r; } ?>