Php CodeIgniter foreach在使用Google Chrome执行代码时运行两次

Php CodeIgniter foreach在使用Google Chrome执行代码时运行两次,php,codeigniter,google-chrome,foreach,Php,Codeigniter,Google Chrome,Foreach,问题是,每当我使用任何其他浏览器时,它都可以正常工作,但当我使用谷歌浏览器时,它会将每个值插入两次。我不知道为什么和如何。让我分享一段代码,让你更好地理解 foreach($this->input->post() as $k => &$v): $data = array( 'emp_survey_id' =>$k, 'suggestion' => $this->input->post('suggestion

问题是,每当我使用任何其他浏览器时,它都可以正常工作,但当我使用谷歌浏览器时,它会将每个值插入两次。我不知道为什么和如何。让我分享一段代码,让你更好地理解

foreach($this->input->post() as $k => &$v):
    $data = array(
        'emp_survey_id' =>$k,
        'suggestion' => $this->input->post('suggestion'),
        'user_id' => $this->session->userdata('id'),
        'user_rating'=>$v
    );

    $this->survey_model->saveRating($data);
endforeach;
redirect('survey/thank_you');

PHP不会因浏览器而异,因为它都是服务器端的。使用Chrome时,检查数据是否发送到服务器两次。向我们展示数据是如何提交的,并进行
var\u转储($this->input->post())
以查看其实际包含的内容。我已经检查了Firefox和Microsoft Edge以提交相同的表单。其他浏览器都可以正常工作,并且只为一个项目插入一个条目,但每当我使用chrome时,它会为每个reocrd创建两个条目。数组(6){[4]=>string(1)“3”[5]=>string(1)“3”[6]=>string(1)“4”[9]=>string(1)“4”[10]=>string(1)“3”[“建议”]=>string(2)“ss”}就像我说的,PHP是一种服务器端语言。它是在服务器上执行的,只需对获取的数据进行操作。如果浏览器之间存在差异,那么问题更可能是数据如何提交到服务器,而不是PHP根据浏览器的不同而采取不同的操作。同样,请向我们展示所有相关代码(表单和任何涉及的javascript),非常感谢您的建议。我删除了表单的javascript验证,现在它工作正常。我猜chrome不知何故提交了两次表格……我猜|可能是您单击两次按钮或多次发送请求,否则它与浏览器无关,如果它在一个浏览器中工作,则应该在另一个浏览器中工作。