无法访问从控制器发送到 CodeIgniter 中的模型的参数
Not able to access parameter sent from Controller to Model in CodeIgniter
我有一个控制器,我在其中尝试将一个关联数组传递到我的模型,然后模型将获取该数组并将其插入到我的数据库中。但是,当我将数组 $finalResults 传递给模型并尝试在其中访问 foreach 语句时,我得到了 "Invalid argument supplied for foreach()" 在第一个 foreach 语句中指示的错误。我还是 codeIgniter 的新手,所以我不确定是什么原因造成的。
我的控制器:
class Test extends CI_Controller {
public function getResults(){
$this->load->model('Test_model');
$this->load->database();
$finalResults = $this->input->post('answers');
$data['finalResults'] = $finalResults;
$this->Test_model->processResults($finalResults);
}
}
我的模特:
class Test_model extends CI_Model{
public function processResults($finalResults){
foreach ($finalResults as $question){
foreach($question as $key => $value){
$data_to_insert = array(
$key => $value
);
}
}
$this->db->insert('result', $data_to_insert);
}
}
我知道这离完整的解决方案还很远,但这个错误让我无法进一步解决。对此有任何帮助表示赞赏!提前致谢!
您能否尝试确认您确实将关联数组传递到 foreach
循环中?
在循环之前为 is_array()
添加条件检查。
if(is_array($finalResults))
foreach($finalResults as $question){
....
}
}
我有一个控制器,我在其中尝试将一个关联数组传递到我的模型,然后模型将获取该数组并将其插入到我的数据库中。但是,当我将数组 $finalResults 传递给模型并尝试在其中访问 foreach 语句时,我得到了 "Invalid argument supplied for foreach()" 在第一个 foreach 语句中指示的错误。我还是 codeIgniter 的新手,所以我不确定是什么原因造成的。
我的控制器:
class Test extends CI_Controller {
public function getResults(){
$this->load->model('Test_model');
$this->load->database();
$finalResults = $this->input->post('answers');
$data['finalResults'] = $finalResults;
$this->Test_model->processResults($finalResults);
}
}
我的模特:
class Test_model extends CI_Model{
public function processResults($finalResults){
foreach ($finalResults as $question){
foreach($question as $key => $value){
$data_to_insert = array(
$key => $value
);
}
}
$this->db->insert('result', $data_to_insert);
}
}
我知道这离完整的解决方案还很远,但这个错误让我无法进一步解决。对此有任何帮助表示赞赏!提前致谢!
您能否尝试确认您确实将关联数组传递到 foreach
循环中?
在循环之前为 is_array()
添加条件检查。
if(is_array($finalResults))
foreach($finalResults as $question){
....
}
}