难以从数据库生成动态复选框

时间:2012-05-24 13:32:40

标签: php mysql codeigniter datamapper codeigniter-datamapper

我正在使用Codeigniter和Datamapper进行数据库查询。我的控制器如下

function fetch_interested_in()
{
    $in = new Interested_in();      
    $in -> get();
    $interested_in = array();
    foreach($in -> all as $data)
    {
        $interested_in[$data -> in_id] = $data -> in_title;
    }
    return $interested_in;
}

我的视图文件如下

    <?php foreach($interested_in as $in)

                        echo form_checkbox('in_in[]', $in -> in_id); 

    ?>

我的表中有3行名为Interested_in。有2列,名称是in_id和in_title。当我运行代码时,我在页面中一个接一个地在页面中得到以下错误。

**

  

遇到PHP错误严重性:通知消息:试图获取   非对象的属性文件名:views / poverview.php行号:137

**

请告诉我哪里出错了。我真的非常感谢你。提前谢谢。

1 个答案:

答案 0 :(得分:1)

<?php foreach($interested_in as $in)

                    echo form_checkbox('in_in[]', $in); 

?>

够了。

您的标题/ ID已“保存”在$in而不是$in->id_id

但在你的情况下,我想你想要:

<?php foreach(array_keys($interested_in) as $id):

      echo '<label>'.$interested_in[$id].'</label>';
      echo form_checkbox('in_in[]', $id); 

      endforeach;
?>