【问题标题】:Get post values when the key is unknown in CodeIgniter在 CodeIgniter 中密钥未知时获取 post 值
【发布时间】:2010-09-22 22:14:08
【问题描述】:

CodeIgniter 允许通过以下方式访问 POST 数据:

$this->input->post('input_name');

其中 'input_name' 是表单字段的名称。这适用于每个输入名称提前知道的静态表单。

就我而言,我正在从数据库中加载一组键/值对。该表单包含每个键/值对的文本输入。

我想知道,有没有办法通过 CodeIgniter api 获取一组发布的数据?

谢谢!

【问题讨论】:

    标签: php forms codeigniter post input


    【解决方案1】:

    根据文档,没有。我建议只使用array_keys($_POST) 来获取密钥。

    【讨论】:

    • 简单明了。我喜欢它。
    【解决方案2】:
    foreach($this->input->post() as $key => $val)  {  echo "<p>Key: ".$key. " Value:" . $val . "</p>\n";  } 
    

    可以用来

    【讨论】:

      【解决方案3】:

      当然,如果你有一个来自数据库的键数组,你可以使用它,比如:

      foreach ($arrayFromDb as $key => $value) {
          $newValue = $this->input->post($key);
      }
      

      那么您的优势在于,如果人们提交额外的字段(例如,通过修改表单并自己发布)这些字段将被忽略

      【讨论】:

        【解决方案4】:
        $array_db_columns = $this->db->query('SHOW COLUMNS FROM ci_props');
            $array_db_columns = $array_db_columns->result_array();
            $array_save_values = array();
            foreach ( $array_db_columns as $value )
            {
                $array_save_values[$value['Field']] = $this->input->post($value['Field']);
            }
        

        插入:

        $this-&gt;db-&gt;insert('props', $array_save_values);

        更新:

        $this-&gt;db-&gt;where('id',$id); $this-&gt;db-&gt;update('props',$array_save_values);

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-06-16
          • 1970-01-01
          • 2017-06-03
          • 2012-07-18
          • 2013-05-23
          • 1970-01-01
          相关资源
          最近更新 更多