我发布了这个in the CodeIgniter forum并且也耗尽了论坛搜索引擎,所以如果不赞成交叉发布,请道歉。
基本上,我有一个输入,设置为<input type="text" name="goal">
。根据用户的请求,他们可以添加另一个目标,该目标会向DOM发送重复项。我需要做的是在我的CodeIgniter控制器中获取这些值并将它们存储在会话变量中。我的控制器目前正在构建:
function goalsAdd(){
$meeting_title = $this->input->post('topic');
$meeting_hours = $this->input->post('hours');
$meeting_minutes = $this->input->post('minutes');
$meeting_goals = $this->input->post('goal');
$meeting_time = $meeting_hours . ":" . $meeting_minutes;
$sessionData = array(
'totaltime' => $meeting_time,
'title' => $meeting_title,
'goals' => $meeting_goals
);
$this->session->set_userdata($sessionData);
$this->load->view('test', $sessionData);
}
目前,显然,我的控制器获取每个输入的值,在其唤醒中写入先前的值,只留下最终值的字符串。但是,我需要存储这些,所以我可以在后续页面上打印它们。
我想我想做的是扩展输入类,以便能够调用$ this-&gt; input-&gt; posts('goal')。最终,我需要将其他数组存储到会话值。但我完全乐于接受实施建议。
非常感谢您提供的任何帮助。
答案 0 :(得分:6)
您希望在表单中使用此功能:
<input type="text" name="goal[]">
然后,您可以通过以下方式获取Controller中的值:
$goal = $this->input->post('goal');
然后通过以下方式在会话中设置变量:
$this->session->set_userdata('goal', $goal);
如果您想再次检索它。通过以下方式做到这一点:
$goal = $this->session->userdata('goal');
你会有这样的事情:
$goal[0] = 'first goal';
$goal[1] = 'second goal';
请先尝试一下:)