Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用codeigniter中的一个查询更新数据库中的所有表行_Php_Mysql_Codeigniter - Fatal编程技术网

Php 使用codeigniter中的一个查询更新数据库中的所有表行

Php 使用codeigniter中的一个查询更新数据库中的所有表行,php,mysql,codeigniter,Php,Mysql,Codeigniter,我的数据库中有一个名为settings 它有3个字段id,key,value 我需要使用一个查询更新一个页面中的所有设置 这是我的设置模型 class Settings_model extends CI_Model{ /* * Get global settings */ public function get_global_settings() { $query = $this->db->get('settings'); $

我的数据库中有一个名为
settings
它有3个字段
id
key
value
我需要使用一个查询更新一个页面中的所有设置

这是我的设置模型

class Settings_model extends CI_Model{
    /*
    * Get global settings
    */
    public function get_global_settings() {
      $query  = $this->db->get('settings');
      $result = $query->result();
      return $result;
    }

    /* Update setting */
    public function update($data, $id) {
        $this->db->where('id', $id);
        $this->db->update('settings', $data);
        return true;
    }
}
这是我的控制器

class Settings extends MY_Controller{
    public function __construct() {
        parent::__construct();

        //Access control
        if(!$this->session->userdata('logged_in')) {
            redirect('admin/login');
        }
    }

    public function index(){

        // Get Categories
        $data['settings'] = $this->Settings_model->get_global_settings();

        // Load View
        $data['main_content'] = 'admin/settings/index';
        $this->load->view('admin/layouts/main',$data);
    }

    public function edit($id) {
        // Calidation Rules
        $this->form_validation->set_rules('value','Name','trim|required|xss_clean');

        $data['settings'] = $this->Settings_model->get_group($id);


        if($this->form_validation->run() == FALSE) {
          // View
          $data['main_content'] = 'admin/settings/edit';
          $this->load->view('admin/layouts/main',$data);

        } else {
          // Create Articles Data Array
          $data = array (
                'value'    => $this->input->post('value')
          );

          // Articles Table Insert
          $this->Settings_model->update($data, $id);

          // Create message
          $this->session->set_flashdata('setting_saved', 'Your setting has been saved');

          // Redirect page
          redirect('admin/settings');
        }

    }

}
但它只按id更新一行


我需要创建一个foreach循环来更新所有行

如果您编写了一个按ID选择的查询,那么它将只更新与该ID匹配的字段。您可以只选择全部而不使用ID。如果您编写了一个按ID选择的查询,那么它将只更新与该ID匹配的字段。您可以只选择全部而不使用ID。