这里是我在HTML表单上的编辑脚本(我的编辑文件(:
<input type="hidden" name=<?php echo "toolbox" ?> <?php if($value['toolbox'] == "0")
echo "unchecked='unchecked'"; ?> value="1" style="width: 40px;"/>
<input type="checkbox" name=<?php echo "toolbox" ?> <?php if($value['toolbox'] == "1")
echo "checked='checked'"; ?> value="<?=$value['toolbox']?>" style="width: 40px;" />
我的模型更新脚本总是捕获第二个值"取消隐藏"复选框表单。当第一个数据为"0"时,我想通过单击复选框进行更新,它应该更新为"1",但我的模型只捕获了第二个复选框表单
MyController:
public function update_data()
{
$role = $this->session->userdata('role_id');
$id = $this->input->post('id');
$toolbox = $this->input->post('toolbox');
$query = $this->m_urfave->update_data($id, $toolbox);
if ($query > 0) {
}
$this->session->set_flashdata('Msg', '<b><h3><font color="blue">Data updated</font)</h3></b>');
redirect('urfave');
}
MyModels:
function update_data($id, $toolbox)
{
$query=$this->db->query("update favorite_tbl SET toolbox='$toolbox' where id='$id'");
}
首先,您必须按照以下修改代码
<form action="url-to-update-method" method="post">
//this hidden field is to send 0 if the checkbox is unchecked as
//php post variable will not have checkbox value
<input type="hidden" name="toolbox" value="0"/>
//This checkbox is the one which is visible on the HTML page to check
<input type="checkbox" name="toolbox" value="1"
<?php if($value['toolbox'] == "1"){ echo "checked='checked'"; } ?> />
</form>
在代码中,hidden
输入字段具有"checked"属性。没有这样的属性。请更正。
它可能会对你有所帮助。