Daftar dan Belajar Sekarang!

Input data jenis array hanya tersimpan 1 character saja codeigniter

foto dwindach
4 Kontribusi 1 Coto
2 bulan yang lalu
permisi semua.. saya punya form input data customer, di dalam form tersebut berisikan data detail perusahaan & data contact person yang masing-masing berbeda table (tbcp = data contact person & tbcust = data detail perusahaan), di form saya menambahkan button add new contact person dimana button tersebut untuk contact person yang lebih dari satu. saat disubmit, data berhasil input ke 2 tabel tersebut yang menjadi permasalahannya adalah di tabel 'tbcp' ada satu row yang datanya hanya tersimpan 1 character saja, row tersebut adalah row foreign key antara 'tbcp' dan 'tbcust' berikut detailnya -controller
public function post_multiple_table(){
		
		$this->load->model('Multiple_model', 'multi_model', TRUE);
		$cust_input_data = array();
		
		$cust_input_data['nama_pt'] = $this->input->post('nama_pt');
		$cust_input_data['tipe'] = $this->input->post('tipe');
		$cust_input_data['alamat'] = $this->input->post('alamat');
		$cust_input_data['email_cust'] = $this->input->post('email_cust');
		$cust_input_data['notelp'] = $this->input->post('notelp');
		$cust_input_data['nofax'] = $this->input->post('nofax');
		
        $this->form_validation->set_rules('nama_orang[]', 'nama_orang', 'required|trim|xss_clean');
        $this->form_validation->set_rules('nohp[]', 'nohp', 'required|trim|xss_clean');
        $this->form_validation->set_rules('email[]', 'email', 'required|trim|xss_clean');
       
        if ($this->form_validation->run() == FALSE){
         echo validation_errors(); // tampilkan apabila ada error
        }else{
    
        $nm = $this->input->post('nama_orang');
        $result = array();
        foreach($nm AS $key => $val){
        $result[] = array(
        "nama_pt"  => $_POST['nama_pt'][$key],
        "nama_orang"  => $_POST['nama_orang'][$key],
        "nohp"  => $_POST['nohp'][$key],
        "email"  => $_POST['email'][$key]
         );
        }  
   }
-model
public function create_multiple_tabel($nama_pt, $nama_orang){
		$this->db->insert('tbcust', $nama_pt);
		$this->db->insert_batch('tbcp', $nama_orang);
	
	}
-SS database & form https://i.imgur.com/o4i3IfM.png tabel tbcust https://i.imgur.com/DqIDlUo.png tabel tbcp https://i.imgur.com/eHCxKlD.png form new customer mohon bantuannya, terima kasih
  • 1. baca aturan main cara menampilkan gambar 2. apakah cuma satu data yang tidak tampil? atau semua data? kalau cuma satu, cek sumber data kamu, bisa jadi dari sumbernya yang salah - hilmanrdn
  • maaf sebelumnya, karena saya baru pertama kali post di forum, saya sudah jawab dan perbaiki ya mas, terima kasih - dwindach
  • semua data seperti itu sampai sekarang? setiap kamu masukkan? atau cuma masalah sekali muncul? - hilmanrdn
Tampikan semua komentar

Login untuk tulis komentar


Tag: codeigniter database

✔ Forum ini sudah terjawab


Jawaban
foto dwindach
4 Kontribusi 1 Coto
1 bulan yang lalu
[solved] sudah bisa terjawab dengan merubah controller & modelnya -controller
public function simpandata()
	{
		//Untuk Validasi
		$this->load->library('javascript');
		$this->load->model('Cust_model');
		$username           = $this->session->userdata('username');
		$data['username']   = $username;
		$this->Cust_model->simpancs();
		
		
		$this->load->view('sales/v_header');
	    $this->load->view('sales/v_customer',$data);
  	    $this->load->view('sales/v_footer');
	

	}
-model
function simpancs()
    {
		$CI =& get_instance();
		$CI->load->database('default');
		if(!empty($_POST['nama_pt']))
		{
			$nama_pt	= $_POST['nama_pt'];
			$tipe	    = $_POST['tipe'];
			$alamat		= $_POST['alamat'];
			$email		= $_POST['email'];
			$notelp		= $_POST['notelp'];
			$nofax	    = $_POST['nofax'];
			$username   = $_POST['username'];

			//insert
			$sql = "insert into cust(nama_pt,tipe,alamat,email,notelp,nofax,username)
					values('$nama_pt','$tipe','$alamat','$email','$notelp','$nofax','$username')";
			$this->db->query($sql);

			$nohp = $_POST['nohp'];
			$keys = count($nohp);
			for($i = 0; $i < $keys; $i++)
			{
				$nama_orang = $_POST['nama_orang'][$i];
				$divisi     = $_POST['divisi'][$i];
                $email_cp   = $_POST['email_cp'][$i];
				$nohp       = $_POST['nohp'][$i];
				if ($nohp>0)
				{
				$sqli="insert into cp(nama_pt,nama_orang,divisi,email_cp,nohp)
						values('$nama_pt','$nama_orang','$divisi','$email_cp','$nohp')";
				$this->db->query($sqli);
				}
			}

			return true;
		}
		else
		{
			return false;
		}
    }
answered icon
foto hilmanrdn
1813 Kontribusi 1353 Coto
2 bulan yang lalu
coba debug pelan-pelan, saat kamu di bagian ini:
$nm = $this->input->post('nama_orang');
//keluarkan isi $nm dengan
die(var_dump($nm));
//sudah sesuai dengan yang kamu mau atau belum ? dari sini kelihatan cara kamu ngeloop dan ambil datanya nanti seperti apa

foto dwindach
4 Kontribusi 1 Coto
1 bulan yang lalu
[solved] sudah bisa terjawab dengan merubah controller & modelnya -controller
public function simpandata()
	{
		//Untuk Validasi
		$this->load->library('javascript');
		$this->load->model('Cust_model');
		$username           = $this->session->userdata('username');
		$data['username']   = $username;
		$this->Cust_model->simpancs();
		
		
		$this->load->view('sales/v_header');
	    $this->load->view('sales/v_customer',$data);
  	    $this->load->view('sales/v_footer');
	

	}
-model
function simpancs()
    {
		$CI =& get_instance();
		$CI->load->database('default');
		if(!empty($_POST['nama_pt']))
		{
			$nama_pt	= $_POST['nama_pt'];
			$tipe	    = $_POST['tipe'];
			$alamat		= $_POST['alamat'];
			$email		= $_POST['email'];
			$notelp		= $_POST['notelp'];
			$nofax	    = $_POST['nofax'];
			$username   = $_POST['username'];

			//insert
			$sql = "insert into cust(nama_pt,tipe,alamat,email,notelp,nofax,username)
					values('$nama_pt','$tipe','$alamat','$email','$notelp','$nofax','$username')";
			$this->db->query($sql);

			$nohp = $_POST['nohp'];
			$keys = count($nohp);
			for($i = 0; $i < $keys; $i++)
			{
				$nama_orang = $_POST['nama_orang'][$i];
				$divisi     = $_POST['divisi'][$i];
                $email_cp   = $_POST['email_cp'][$i];
				$nohp       = $_POST['nohp'][$i];
				if ($nohp>0)
				{
				$sqli="insert into cp(nama_pt,nama_orang,divisi,email_cp,nohp)
						values('$nama_pt','$nama_orang','$divisi','$email_cp','$nohp')";
				$this->db->query($sqli);
				}
			}

			return true;
		}
		else
		{
			return false;
		}
    }


Login untuk diksusi di forum sekolah koding