【发布时间】:2020-06-19 05:27:37
【问题描述】:
我正在尝试将一个数据数组插入到数据库中的一个表中,但是一个错误说数组到字符串转换错误
这是我的控制器中的 post 函数,首先我发布一个数据数组。数组的值将是名称和数字,它们不是 id。 id 只是 kodejdwl。这将传递给我的模型
function index_post() {
$data = array(
'kodejdwl' => $this->post('kodejdwl'),
'tahun_akad' => $this->post('kode_tahun_akad'),
'semester' => $this->post('semester'),
'mk' => $this->post('mk'),
'ruangan' => $this->post('ruangan'),
'nama_dosen' => $this->post('nama_dosen'),
'namakelas' => $this->post('nama_kelas'),
'jam_mulai' => $this->post('jam_mulai'),
'jam_selesai' => $this->post('jam_selesai'),
);
}
将上述代码中的数据传递给模型后。我创建了一些新变量,它们是数组数据中每个值的名称的 id。例如,如果 data['mk'] 的值是网站,那么 id 将为 1,并且该 id 将存储在变量 $kodemk 中,我对数据中的每个值都执行此操作。然后我创建了 new_data,它存储了我之前制作的 id 数组。然后我将该数组插入到我的数据库中的一个表中。我认为这会很好,但它说数组到字符串转换错误。我应该怎么做才能将该数组插入到我的数据库中的表中?
public function insert($data){
$this->db->select('thn_akad_id');
$tahunakad_id = $this->db->get_where('tik.thn_akad',array('tahun_akad'=>$data['tahun_akad'],'semester_semester_nm'=>$data['semester']))->result();
$this->db->flush_cache();
$this->db->select('kodemk');
$kode_mk = $this->db->get_where('tik.matakuliah',array('namamk'=>$data['mk']))->result();
$this->db->flush_cache();
$ruangan = $this->db->get_where('tik.ruangan', array('namaruang' => $data['ruangan']), 1)->result();
$this->db->flush_cache();
$this->db->select('nip');
$nip_dosen = $this->db->get_where('tik.staff',array('nama'=>$data['nama_dosen']))->result();
$this->db->flush_cache();
$this->db->select('kodeklas');
$kodeklas = $this->db->get_where('tik.kelas',array('namaklas'=>$data['namakelas']))->result();
$this->db->flush_cache();
$this->db->select('kode_jam');
$kode_mk = $this->db->get_where('tik.wkt_kuliah',array('jam_mulai'=>$data['jam_mulai'],'jam_selesai'=>$data['jam_selesai']))->result();
$this->db->flush_cache();
$new_data = array(
'kodejdwl' => $data['kodejdwl'],
'thn_akad_thn_akad_id' => $tahunakad_id,
'matakuliah_kodemk' => $kode_mk,
'ruangan_namaruang' => $ruangan,
'staff_nip' => $nip_dosen,
'kelas_kodeklas' => $kodeklas,
);
$insert = $this->db->insert('tik.jadwal_kul', $new_data);
return $this->db->affected_rows();
}
【问题讨论】:
-
tik.jadwal_kul是你的表名吗? -
是的,这是我的表名
标签: php arrays codeigniter