大家帮我看看获取表单ID是那错了,只能获取1个
public function edit_post($id=null){
/*增加请修级别*/
$bxjb_class = explode('-',trim($this->input->post('bxjb_class_id')));
$bxjb_class_id = $bxjb_class;
$bxjb_class_name = $bxjb_class;
$bxsheet = $this->filter_post();
$bxsheet['bxjb_class_id'] = $bxjb_class_id;
/*增加设备类别*/
$bxsb_class = $this->input->post('bxsb_class_name');
$bxsb_class_id = $bxsb_class;
$bxsb_class_name = $bxsb_class;
$bxsheet = $this->filter_post();
$bxsheet['bxsb_class_id'] = $bxsb_class_id;
//请修类别
$bxsheet_class = explode('-',trim($this->input->post('bxsheet_class_id')));
$bxsheet_class_id = $bxsheet_class;
$bxsheet_class_name = $bxsheet_class;
$bxsheet = $this->filter_post();
$bxsheet['bxsheet_class_id'] = $bxsheet_class_id;
$this->check_data($bxsheet);
$this->db->trans_begin();
print_r($bxsheet);exit;
if($id==null)
{
$bxsheet_number = $this->build_bxsheet_number($bxsheet_class_id,$bxsheet_class_name,$bxjb_class_id,$bxjb_class_name,$bxjb_class_id,$bxjb_class_name);
$bxsheet['number'] = $bxsheet_number;
$bxsheet['create_time'] = Date('Y-m-d H:i');
if($this->current_user!=null)
{
$bxsheet['creater_id'] = $this->current_user->id;
}
$this->db->insert("bxsheet",$bxsheet);
}
else
{
$this->db->update("bxsheet",$bxsheet,array('id' => $id));
}
if ($this->db->trans_status() === FALSE)
{
echo "出现错误,事务已回滚";
$this->db->trans_rollback();
}
else
{
$this->db->trans_commit();
echo "success";
if($id==null)
{
$sys = $this->config->item('sys');
if($sys['prompt_type_audio'])
{
$this->send_tts();
}
if($sys['prompt_type_email'])
{
$this->send_email();
}
}
}
}
<select name="bxsb_class_name">
<?php foreach($bxsb_classs as $bxsb_class):?>
<option name="p_bxsb_name" id="bxsb_name" value="<?=$bxsb_class->id."-".str_replace("-","",$bxsb_class->name)?>" <?= $bxsb_class_id==$bxsb_class->id? "selected" : ""?>>
+<?=$bxsb_class->name?>
</option>
<?php endforeach;?>
</select>
<select name="bxjb_class_id">
<?php foreach($bxjb_classs as $bxjb_class):?>
<option value="<?=$bxjb_class->id."-".str_replace("-","",$bxjb_class->name)?>" <?= $bxjb_class_id==$bxjb_class->id? "selected" : ""?>>
+<?=$bxjb_class->name?>
</option>
<?php endforeach;?>
</select>
<select name="bxsheet_class_id">
<?php foreach($bxsheet_classs as $bxsheet_class):?>
<option value="<?=$bxsheet_class->id."-".str_replace("-","",$bxsheet_class->name)?>" <?= $bxsheet_class_id==$bxsheet_class->id? "selected" : ""?>>
+<?=$bxsheet_class->name?>
</option>
<?php endforeach;?>
</select>
这个问题完全可以自己排查,这是方法问题,不是知识问题。
首先,用firebug或者Chrome自带的F12,检查一下是否有三个ID被Post到后台了。如果没有,那就是select那一块写的有问题。
然后,最简单地,print一下每个ID。看在哪一步开始丢失的,哪里丢失了就是哪里的代码有问题,包括你这里的trim,explode, 都是潜在的可能。
感谢yuzhigang5460,通过print已经解决问题,是代码的问题,将三个获取ID的代码合为一个就可以正常运行了。
页:
[1]