动态添加数据库表值到下拉列表

时间:2013-10-25 04:16:29

标签: php drop-down-menu zend-framework2

我创建了自定义插入来获取数据库中的值列表。

现在我想使用这个数组创建一个下拉列表

这是我的选择列表

$this->add(array(
    'name' => 'group_name',
    'type' => 'select',
    'attributes' => array(
        'id'=>'group_name',
        'class'=>'large',
    ),
    'options' => array(
        'label' => 'Select List',
        'value_options' => array(
            '1' => 'php',
            '2' => 'java'
        ),
    ),
));

3 个答案:

答案 0 :(得分:2)

你没有提供太多关于它实际是什么的信息,你有麻烦,但是现在我假设你很难将数据库值放入你的Select元素中。为此,请查看我的博客上的详细信息:

您需要了解的基本原理是简单的Depedency Injection。您需要将数据源(或数据本身)正确注入表单。这是使用Zend Framework 2的ServiceManager完成的。

由于有许多不同的路径可供选择(甚至我的博客并未涵盖所有这些),在您提出要求之前,我不会详细介绍任何特定的路径。博客本身应该足以让你开始能够写出正确的SO-Question;)

答案 1 :(得分:0)

您需要帮助的部分是什么? HTML? PHP中的循环? HTML:

<form action="" method="get">
<select name="group_name">
  <option value="1">php</option>
  <option value="2">java</option>
</select>
</form>

PHP,用于group_name:

echo $array['name'];

循环选择值:

foreach($array['options']['value_options'] AS $key=>$option){
    echo '<option value="'.$key.'">'.$option.'</option>';
}

像这样...... ???

答案 2 :(得分:0)

不要去做最难的事情     `在Controller中,添加

$urFormObject->get('selectOptionName')->setValueOptions($listArray);
Example: 

$ formName-&GT;获得( 'GROUP_NAME') - &GT; setValueOptions($ listArray);`