我正在尝试使用PHP动态构建下拉菜单。这个想法是:元素是从一个调用和数组的循环中形成的。如果数组元素与会话中保存的数据相匹配,那么它会将“selected”属性添加到标记,这意味着该页面显示先前选择的选项。
我试图在这里包含一组完整的代码,从定义会话数据的变量到回应表单元素的HTML。
它目前不工作 - 显示下拉菜单,但是为空,并且没有选项。我已经用ideone调试过它,它似乎能够成功运行,而且我看不到错误,但是这是我的第一个PHP函数!所以我确信我已经搞砸了:)
任何帮助非常感谢。
session_start();
//if the session data has been set, then the variable $sv_02 is defined
//as the data held in the session under that name, otherwise it is blank
if (isset($_SESSION['sv_02'])) {$sv_02=$_SESSION['sv_02'];} else {$sv_02="";}
//define the array
$dm_sv_02 = array('-Year','-2012','-2011','-2010','-2009');
//create the function
function dropdown($dropdownoptions, $session_data)
{
foreach($dropdownoptions as $dropdownoption){
if($session_data == $dropdownoption){
echo '' . $dropdownoption . '';
} else {
echo '' . $dropdownoption . '';
}
}
}
//echo the HTML needed to create a drop down, and populate it with
//the function which should create the elements
echo '';
dropdown($dm_sv_02, $sv_02);
echo '';
?>