【发布时间】:2014-06-07 16:50:20
【问题描述】:
我想添加具有多个重复表单的多行,我被困在模型上。
1#我添加玩家,玩家可以有1个或N个工作。
2# 创建玩家时,您可以添加一个或多个相同形式的工作。默认情况下,我只为 1 个工作显示 1 个输入,但是如果您单击按钮,则会显示一个新输入来为该新玩家填充一个新工作。
我的看法:
Name<input type="text" name="name" value="<?php echo set_value('name'); ?>" />
Jobs<input type="text" name="jobs[0]" value="<?php echo set_value('jobs[0]'); ?>" />
<button id="add_job">Add new job</button>
<!-- if button click, jquery add new input -->
Jobs 2<input type="text" name="jobs[1]" value="<?php echo set_value('jobs[1]'); ?>" />
我的控制器:
$this->form_validation->set_rules('name', 'name', 'trim|required|min_length[3]|max_length[64]');
$this->form_validation->set_rules('jobs[]', 'job', 'trim|required|min_length[3]|max_length[64]');
...
$this->players_model->create_player($img['file_name'])
我的模特:
function create_player($pic)
{
$new_member_insert_data = array(
'name' => $this->input->post('name'),
'pic' => $pic
);
$insert = $this->db->insert('players', $new_member_insert_data);
$id_player = $this->db->insert_id();
// problem starts here
$new_member_insert_jobs = array();
//for() {
$new_member_insert_jobs [] = array(
'id_player' => $id_player,
'job' => $this->input->post('jobs')[]
);
//}
$this->db->insert_batch( 'estudios', $new_member_insert_jobs );
【问题讨论】:
-
$new_member_insert_jobs 是一个数组,但没有赋值
-
看起来不错,除了我不确定
'job' => $this->input->post('jobs')[]这个值是一个数组可能会搞砸insert_batch
标签: php codeigniter