Anahtar CodeIgniter'daki bilinmediği zaman sonrası değerleri almak

4 Cevap php

CodeIgniter üzerinden POSTed verilere erişim sağlar:

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

'input_name' bir form alanının adıdır. Bu her giriş isim vaktinden bilinen statik bir form için iyi çalışır.

Benim durumumda, ben veritabanından anahtar / değer çiftleri topluluğu yükleme duyuyorum. Form her anahtar / değer çifti için bir metin girişi içeriyor.

Ben merak ediyorum, is there a way to get an array of posted data via the CodeIgniter api?

Teşekkürler!

4 Cevap

Belgelere göre, hayır. Ben sadece anahtarlarını almak için array_keys($_POST) kullanarak öneririm.

foreach($this->input->post() as $key => $val)  {  echo "<p>Key: ".$key. " Value:" . $val . "</p>\n";  } 

bu için kullanılabilir

Eğer veritabanından tuşları bir dizi varsa, kesinlikle sizin gibi, bu kullanabilirsiniz:

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

Sonra insanların (formunu değiştirerek ve kendilerini göndererek örneğin) ek alanlar göndermeniz durumunda insanlar bu alanlar göz ardı edilecektir avantajı var

$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']);
    }

yerleştirin:

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

güncelleme:

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