Php CI:将隐藏字段中的值保存到另一个表

Php CI:将隐藏字段中的值保存到另一个表,php,mysql,codeigniter,Php,Mysql,Codeigniter,我在CI框架中创建了一个包含60个字段的表单,数据库正常工作。现在,我想分离一些字段并将其发送到另一个表,该表链接到主表(当然是有关系的)。 因此,我隐藏了一些字段,并在单选按钮选中“是”时显示: 视图正在工作,但现在我不知道如何获取数据库的值(特别是从imp_status,因为有2个id)。表单末尾有一个保存按钮,它链接到另一个脚本。我从脚本中发送了其他值。 现在我有了table_primary(..,imp_status,id_imp,…)和table_imp(id_imp,…)。如果没有第

我在CI框架中创建了一个包含60个字段的表单,数据库正常工作。现在,我想分离一些字段并将其发送到另一个表,该表链接到主表(当然是有关系的)。 因此,我隐藏了一些字段,并在单选按钮选中“是”时显示:

视图正在工作,但现在我不知道如何获取数据库的值(特别是从imp_status,因为有2个id)。表单末尾有一个保存按钮,它链接到另一个脚本。我从脚本中发送了其他值。 现在我有了table_primary(..,imp_status,id_imp,…)和table_imp(id_imp,…)。如果没有第三方,我希望imp_status列保存“0”&将id_imp设置为NULL/0(在表_primary中)。但如果有第三方,imp_status列应保存“1”并保存有关该第三方的所有信息(到带有主键id的表\u imp)。 这是写剧本的正确方法吗?我应该如何修改模型和控制器? 这是我当前的控制器(没有imp_状态和id_imp):

这是我目前的模型:

// there are properties & setters
public function insert(){
   $sql = "INSERT INTO table_primary
          (...,imp_comp_name,...) VALUES (...,'".$this->imp_comp_name."',...)";
   return $this->db->query($sql);
}

我希望我的问题不会让人困惑。非常欢迎阅读和学习的链接,谢谢。

尽管您的问题有点让人困惑,但我正在尝试给出答案,您需要进一步的帮助,您可以用完整的源代码给我回信

首先,在服务器端,单选按钮值将通过 $imp_status=$this->input->post('imp_status'); 值将是所选单选按钮的值,根据该单选按钮的值,您可以更新数据库并在两个表之间创建关系


但在您的问题中,您如何确定该表单中存在第三方,请详细说明,以获得更多信息。

这有点令人困惑。我会继续尝试破译它,但如果你能把它清理得更干净,那就最好了你说的“有两个imp_身份证”是什么意思?
function importirCheck() {
    if (document.getElementById('imp_status_no').checked) {
        document.getElementById('info_imp').style.display = 'none';
        $("#imp_status_no").val("");
    }
    else {
        document.getElementById('info_imp').style.display = 'block';
        $("#imp_status_yes").val("");
        $("#imp_comp_name").val("");
        ...
    }
}
...
$imp_comp_name=$this->input->post("imp_comp_name");
$this->form_m->set_imp_comp_name($imp_comp_name);
$imp_comp_dir=$this->input->post("imp_comp_dir");
$this->form_m->set_imp_comp_dir($imp_comp_dir);
...
$result = $this->form_m->insert();
// there are properties & setters
public function insert(){
   $sql = "INSERT INTO table_primary
          (...,imp_comp_name,...) VALUES (...,'".$this->imp_comp_name."',...)";
   return $this->db->query($sql);
}