我想将一个变量(选择框 id,来自数据库)从控制器传递给视图,但不知道该怎么做。
问问题
59 次
3 回答
0
假设您有一个名为article的控制器和一个方法索引,那么在您的视图中您将拥有:
<?php
echo form_open('article/index');
echo form_input('text');
echo form_close;
?>
在您的控制器中,例如:
public function index()
{
if($this->input->post()) {
$this_is_catched_text = $_POST['text'];
}
}
这是没有验证和其他东西的。只要你明白它是如何工作的。
于 2013-03-16T21:03:32.997 回答
0
您最初的问题不是那么清楚,但是在阅读了评论后,您可以做到这一点。
控制器
//whatever function you're using to populate your original array below.
$data['all'] = $this->model_name->getData();
//then run that data through a foreach loop to populate the dropdown variable.
foreach($data['all'])
{
$data['idDropDown'][$data['all']['id']]=$data['all']['ad'];
}
这将传递一个数组,如: [455]=>Aliağa, [456]=>Balçova 作为 $idDropDown 以及您的原始数据作为 $all
然后在视图中刚刚使用了 CI 的表单下拉菜单。
echo form_dropdown('id',$idDropDown);
于 2013-03-16T21:48:31.213 回答
0
在你的情况下,它会是这样的
$ilce = array(array("id" => 455, "il_id" => 35,"ad" => "Aliağa"),
array("id" => 456, "il_id" => 35, "ad" => "Balçova"));
$options = array();
foreach($ilce as $x) {
$options[$x['id']] = $x['ad'];
}
echo form_dropdown('names', $options);
于 2013-03-16T21:57:45.917 回答