我想将数据加载到我的视图中,尤其是我的控制器中的变量 items
. 但是在我的控制器中,我想在推送到视图之前动态设置 items
.
我尝试了下面的代码,但它不起作用 . 视图加载错误“Undefined variable:items” .
public function index(){
if ($this->input->post('filter'))
{
$search = $this->input->post('filter');
$test=$this->upload_model->test_r();
$data['items']=$test;
}
else
{
$data['items']=$one;
}
$data=array ('other'=>$othrs, 'links'=>$links);
$this->load->view('gallery_view', $data);
}
我希望如何工作是 $data['items']
默认设置为 $one
,当页面加载时,但在页面上我有一个选择框,所以我希望如果更改选择框, $data['items']
将被设置为别的 . 但这只是在使用选择框时,否则应该使用 $data[items]=$one
查找 . $ data数组具有需要在视图中加载的其他值,例如"others"和"links" .
我视图上的选择框
<?php echo form_open(base_url().'page') ?>
<form class="form-inline" role="form">
<select class="form-control" id="filter" name="filter" onchange="this.form.submit()">
<option value="1">1</option>
<option>2</option>
<option>3</option>
</select>
</form>
<?php echo form_close(); ?>
上面的索引控制器功能适用于我的控制器“Pages” . 选择框中的值被捕获得很好,当我对传递的值进行回显时,它会正确显示 .
问题是根据是否使用选择框使视图数据“项目”发生变化 .
我该如何解决?
1 回答
如果有条件,请执行此行
删除控制器中的以下行 .
因为在设置
$data["items"]
后重新分配$data