【发布时间】:2018-03-07 10:48:33
【问题描述】:
我正在尝试将值放入这样的 MySQL 表中:
|---sbjct_name---|---级别---|
|---------物理---------|----1级-----|
|---------物理---------|----2级-----|
|---------物理---------|----3级-----|
|--------- 微积分 ---------|----Level 1-----|
|---------微积分---------|----2级-----|
(我不知道如何制作桌子,但我想你明白了)
假设我要将“Math”放入 sbjct_name 列,同时将“Level 1”、“Level 2”、“Level 3”值放入 level 列。
基本思路来自this pict (selecting value for a same input text value)。
而不是为每个级别多次插入“数学”, 我正在尝试使用复选框标记一次性提交。类似于this pict (with checkbox)。
我不知道如何实现这一点(或者如果在 CI 中可能的话)。
这是来自我的控制器的一些代码,
public function add_subject()
{
$data = array();
if ($this->input->post('savebttn'))
{
$this->form_validation->set_rules('sbjct_name', 'Subject Name', 'trim|required|xss_clean');
$this->form_validation->set_rules('level', 'Level', '|required|is_natural');
$this->form_validation->set_error_delimiters('<span class="fielderror">','</span>');
if ($this->form_validation->run() == FALSE)
{
$data['reset'] = FALSE;
}
else
{
//I don't know what to do here
//I don't know what to do here
//I don't know what to do here
//I don't know what to do here
}
}
$data['level'] = $this->admin_model->get_checkbox_option('level', 'lvl_id', 'lvl_name');
$data['page'] = 'createsubject';
$this->load->view('admin/main', $data);
}
这是模型中的复选框视图功能,
public function get_checkbox_option($table, $id, $name, $selected=0)
{
$query = $this->db->get($table);
$select= '';
if ($query->num_rows() > 0)
{
foreach ($query->result_array() as $row)
{
$selected_option = ($selected == $row[$id]) ? 'selected = "selected" ':' ';
$select .='<input type="checkbox" name="level" value="'.$row[$id].'" '.$selected_option.'>'.$row[$name].'<br>';
}
}
return $select;
}
这是视图上的表单,
<form action="" method="post" id="createcategoryform">
<table>
<tbody>
<tr>
<td><div class="label">Subject Name</div></td>
<td><div class="input">
<input type="text" name="sbjct_name" size="39" class="ui-corner-all input-text validate[required]">
<?=form_error('sbjct_name');?>
</div></td>
</tr>
<tr>
<td><div class="label">Level</div></td>
<td><div class="input-text ui-corner-all validate[required]">
<?=(isset($level)) ? $level: '';?>
</div><?=form_error('level');?></td>
</tr>
<tr>
<td> </td>
<td><input type="submit" value="Save" name="savebttn" class="input-button ui-corner-all ui-state-default"></td>
</tr>
</tbody>
</table>
</form>
如果您能提供任何线索,我将不胜感激。 :D
【问题讨论】:
-
你能解释一下你真正想要什么吗?很不清楚,我好像看不懂。
-
@Dray 我已经编辑了我的问题。我希望它比以前更清楚。顺便感谢您的回复。
标签: php codeigniter checkbox