「カード」と呼ばれる多段階フォームがあります
このフォームには、個人のいくつかの情報、何をしたか、仕事、使用したツールなどを含める必要があります。
これを解決してよりクールにするために、マルチフォーム ステップ フォームを作成しました。そのため、ユーザーが最初のテーブル (使用したツールの情報など) へのデータの入力を終了すると、ユーザーは次のステップ ボタンをクリックし、他のテーブルからの入力が表示されます (プロジェクト人が働いた)...これは、ユーザーが必要なすべてのデータを入力するまで続きます。仕事を節約するために、私はgrocercrudを使用しています。
<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;
}
コントローラーにリダイレクトするとき、テーブルを 1 つだけ埋めるとすべてが機能します。
問題は、関連する他のテーブルに対応するデータを格納する方法がわからないことです。したがって、tableNameに新しいレジストリを挿入すると、新しい ID が割り当てられます。ここで、この最近割り当てられた ID を使用して、他のテーブルの他の必須フィールドとして使用したいと思います (関連するテーブルはこの ID を外部キーとして持っています)。
これを解決する方法は、次のようなものです。
$last_id = $user->id;
だから私は他のテーブルにデータを挿入し続け、
使うと役に立つでしょうか
$crud->set_relation('column','table','column');
おそらくコールバックか何か、1つのフォームから複数の関連テーブルに挿入するようなことをした人はいますか?