无法对下拉列表进行数据绑定

时间:2015-01-09 01:30:50

标签: php data-binding drop-down-menu

我遇到了数据绑定下拉列表的问题。我遵循MVC结构,这就是我做到的。

这是我的模型层中的一个函数:

function GetTillverkare()
{
    $data = array();
    mysql_set_charset('utf8');
    $query = "Select Namn from Tillverkare";
    if(!$sql = mysql_query($query)) {
        throw new exception("Error: Can not execute the query.");
    } else {
        $num = mysql_num_rows($sql);
        if($num>0)
        {
            for($i=0; $i<$num; $i++)
            {
                $data[$i] = mysql_fetch_array($sql);
            }
        }
    }
    return $data;

}

以下是我的Controller层的代码:

$displayResults = new Sok() //Sok is my model class.

$GetTillverkare = $displayResults->getTillverkare(); 
//I am able to print the $GetTillverkare so there is no problem with getting the data.

这是我的视图图层

Fabrikat:<br /> <select name="Tillverkare_search" id="Tillverkare_search">
        <option value="" selected="selected">Pick</option>
        <option value="<?php echo $GetTillverkare ?>"</option>

    </select><br/>

我没有收到任何错误,但它没有在下拉列表中显示数据。它是空的

1 个答案:

答案 0 :(得分:0)

您的模型函数返回数组,因此如果每个数组索引都不能通过echo打印数组 是这个列表的元素尝试以这种方式打印

for($i=0;$<sizeof($GetTillverkere;$i++){
 echo "<option value='".$GetTillverkere[$i]."'>".$GetTillverkere[$i]."</option>";
 }

并且您在第二个选项标签中也有未闭合的html标签,并且您尝试将名称打印到选项的值,但在标签之间没有,这是此标签的可见部分