我试图为带有输入复选框的复选框创建编辑按钮
屏幕截图:http://gyazo.com/381e44b71e7b62d257bff0a0361b5d61
我已经完成了插入功能及其工作。
表中的我有像
这样的数据库 id property_id property_type_id alt_txt
------ ----------- ---------------- ------------
1 1 1 25
2 2 1 30
4 7 1 50
49 6 1 60
property_type_id与复选框相关,alt_txt与输入相关
单击编辑时如何将这些数据传递给他们
我尝试制作像
这样的模型功能function get_by_id($id){
$this->db->where('id', $id);
return $this->db->get($this->_table_name);
}
控制器中的我称之为
$this->data['type'] = $this->type_m->get_by_id($id);
并且在var_dump中我重新开始
object(CI_DB_mysql_result)#232 (8) {
["conn_id"]=>
resource(45) of type (mysql link)
["result_id"]=>
resource(87) of type (mysql result)
["result_array"]=>
array(0) {
}
["result_object"]=>
array(0) {
}
["custom_result_object"]=>
array(0) {
}
["current_row"]=>
int(0)
["num_rows"]=>
int(0)
["row_data"]=>
NULL
}
请帮我制作此编辑功能。
修改
以下是我的观看代码的一部分:
<fieldset>
<!-- Form Name -->
<legend>Choose property type</legend>
<!-- Multiple Checkboxes (inline) -->
<div class="form-group">
<div class="col-md-4">
<label class="checkbox-inline" for="checkboxes-0">
<?php echo form_checkbox('data[1][property_type_id]', '22', set_value('data[1][property_type_id]', $type->property_type_id), 'id="checkboxes-0"')?>
PentHause
</label>
<br>
<!-- Text input-->
<div class="form-group">
<div class="col-md-8">
<?php echo form_input('data[1][alt_txt]', set_value('data[1][alt_txt]',$type->alt_txt), 'class="form-control" id="cena" placeholder="Enter Price"')?>
</div>
</div>
<label class="checkbox-inline" for="checkboxes-1">
<?php echo form_checkbox('data[2][property_type_id]', '21', set_value('data[2][property_type_id]', $type->property_type_id), 'id="checkboxes-1"')?>
Garage
</label>
<br>
<!-- Text input-->
<div class="form-group">
<div class="col-md-8">
<?php echo form_input('data[2][alt_txt]', set_value('data[2][alt_txt]', $type->alt_txt), 'class="form-control" id="cena" placeholder="Enter Price"')?>
</div>
</div>
答案 0 :(得分:0)
如果您只想在模型中使用一行get_where()方法,可能会更容易:
$item = $this->db->get_where($this->_table_name,array("id"=>$id),1,0);
return ($item->num_rows() == 1) ? $item->row() : false;
这样你就可以使用get_where()的limit和offset参数选择1行,检查结果是否有一行并返回该行对象,否则返回false以使调用失败。
答案 1 :(得分:0)
对于那些有相同情况的人,我已经成功并且分享了不适:
模型功能:
public function get_by_id($id){
$item = $this->db->get_where($this->_table_name,array("property_id"=>$id));
return $item->result_array();
}
在控制器中,我打电话给
$type_array = $this->type_m->get_by_id($id);
foreach($type_array as $estate_obj){
$type = array();
$type['id'] = $estate_obj['id'];
$type['property_id'] = $estate_obj['property_id'];
$type['property_type_id'] = $estate_obj['property_type_id'];
$type['alt_txt'] = $estate_obj['alt_txt'];
//var_dump($type);
$this->data['type'][$type['property_type_id']] = $type;
}
这就是我的观点:
<fieldset>
<!-- Form Name -->
<legend>Изберете типове за имота</legend>
<!-- Multiple Checkboxes (inline) -->
<div class="form-group">
<div class="col-md-4">
<label class="checkbox-inline" for="checkboxes-0">
<?php echo form_checkbox('data[1][property_type_id]', '22', set_value('data[1][property_type_id]',$type[22]['property_type_id']), 'id="checkboxes-0"')?>
Пентхаус
</label>
<br>
<!-- Text input-->
<div class="form-group">
<div class="col-md-8">
<?php echo form_input('data[1][alt_txt]', set_value('data[1][alt_txt]', isset($type[22]['alt_txt'])?$type[22]['alt_txt']:''), 'class="form-control" id="cena" placeholder="Въведи цена"')?>
</div>
</div>
<label class="checkbox-inline" for="checkboxes-1">
<?php echo form_checkbox('data[2][property_type_id]', '21', set_value('data[2][property_type_id]', $type[21]['property_type_id']), 'id="checkboxes-1"')?>
Гараж/Паркомясто
</label>
<br>
<!-- Text input-->
<div class="form-group">
<div class="col-md-8">
<?php echo form_input('data[2][alt_txt]', set_value('data[1][alt_txt]', isset($type[21]['alt_txt'])?$type[21]['alt_txt']:''), 'class="form-control" id="cena" placeholder="Въведи цена"')?>
</div>
</div>
<label class="checkbox-inline" for="checkboxes-2">
<?php echo form_checkbox('data[3][property_type_id]', '20', set_value('data[3][property_type_id]',$type[20]['property_type_id']), 'id="checkboxes-2"')?>
Бизнес
</label>
<br>
<!--Text input-->
<div class="form-group">
<div class="col-md-8">
<?php echo form_input('data[3][alt_txt]', set_value('data[3][alt_txt]', isset($type[20]['alt_txt'])?$type[20]['alt_txt']:''), 'class="form-control" id="cena" placeholder="Въведи цена"')?>
</div>
</div>
问题解决了!谢谢