【发布时间】:2023-03-13 00:00:02
【问题描述】:
我有一个叫做“卡片”的多步骤表单
此表格必须包含一个人的多项信息,该人做了什么,该人的工作,该人使用的工具等。
为了解决这个问题并让它更酷,我制作了一个多表单步骤表单,因此当用户完成为第一个表填充数据(用于实例化他使用的工具的信息)时,用户单击下一步按钮,然后从其他表输入显示(项目人员已经工作)......这一直持续到用户填写所有必要的数据。为了节省工作,我正在使用杂货店。
<form method="post" action="<?php echo base_url();?>controller/save" name="form"/>
<label>User Name</label>
<input type="text" name="Username">
<input type="submit" value="Add"/>
<!--#######################
Several more data to store in distict tables
#######################
-->
</form>
in controller:
function save
{
$arrData["Username"] = $this->input->post("Username");
$this->User_model->Add($arrData);
}
in User_model
function Add($arrData) {
if($this->db->insert(tableName, $arrData))
return true;
else
return false;
}
重定向到控制器时,如果我只填写一张表,一切都会正常工作。
问题是我不知道如何将相应的数据存储到其他涉及的表中。 因此,如果我在 tableName 中插入一个新注册表,则会分配一个新 ID。现在我想用这个最近分配的 ID 将它用作其他表中的其他必需字段(相关表有这个 ID 作为外键)
如何解决这个问题是这样的:
$last_id = $user->id;
所以我一直在向其他表中插入数据,
有用吗
$crud->set_relation('column','table','column');
可能是回调或其他什么,有没有人做过类似从一个表单插入多个相关表的操作?
【问题讨论】:
标签: php codeigniter grocery-crud