saya mau bertanya tentang update data di Codeigniter

dalam aplikasi yang saya buat mempunyai 2 level user yaitu admin dan direktur, contoh ketika sy mau mengedit data user yang bernama rendy level 1(admin) mau saya ubah menjadi level 2 (direktur) terus yang saya ubah di form edit hanya di bagian level nya saja, di bagian nip pegawai, nama, username, password, telpon, dan alamat tidak saya ubah selanjutnya data yang saya ubah berhasil disimpan, setelah itu saya login kembali menggunakan data rendy dengan username dan password yang sama malah tidak bisa login, tapi jika saya mengubah password dan mengganti level usernya terlebih dahulu baru bisa berhasil login, mohon solusinya terima kasih. ini code bagian controller di function update

 <?php
  public function update()
	{
		$nip_pegawai_lama = $this->input->post('nip_pegawai_lama');
		$data_pegawai = array(
			'nip_pegawai'=>$this->input->post('nip_pegawai'),
			'nama'=>$this->input->post('nama'),
			'username'=>$this->input->post('username'),
			'password'=>md5($this->input->post('password')),
			'tlp_pegawai'=>$this->input->post('tlp_pegawai'),
			'alamat'=>$this->input->post('alamat'),
			'level'=>$this->input->post('level')
			);
		if ($this->m_pegawai->update($nip_pegawai_lama, $data_pegawai) > 0)
		{
			$msg = 1;
		}else{
			$msg = 5;
		}

		$this->session->set_flashdata('msg',$msg);
		redirect('pegawai');
	}
?>

avatar rendy18
@rendy18

11 Kontribusi 0 Poin

Diperbarui 6 tahun yang lalu

2 Jawaban:

mungkin bisa di cek bagian login nya,karena kalau di analisis berdasarkan table yang di atas dengan kondisi level bisa di redirect ke masing masing form

kemungkinan bug ada di controller login ......

Note : Menurut analisa saya

avatar Kharizma
@Kharizma

34 Kontribusi 13 Poin

Dipost 6 tahun yang lalu

 <?php
public function login(){
		//ambil input dari form
		$username = trim($this->input->post('username'));
		$password = trim($this->input->post('password'));
		//data form dari database admin

		// periksa apakah input username atau password kosong atau tidak
		if(empty($username) or empty($password)){
			$msg = '<div class="alert alert-danger">USERNAME ATAU PASSWORD TIDAK BOLEH KOSONG!</div>';
			$this->session->set_flashdata('msg', $msg);
			redirect('admin');
			//kembalikan tampilan browser ke halaman depan (admin)
		}

		// periksa ke database apakah username dan password ada atau tidak
		$data_user = $this->m_user->validasi($username,md5($password));

		// jika data username dan password ditemukan
		if($data_user->num_rows() > 0){

			$user = $data_user->row();
			// print_r($user);
			$data = array(
				'nip_pegawai' => $user->nip_pegawai,
				'nama' => $user->nama,
				'level' => $user->level
				//data yang disimpan ke session
				);
			// simpan data user ke session
			$this->session->set_userdata($data);
			redirect('admin');
		}else{
			//jika data user tidak ditemukan, persiapankan pesan yang sesuai
			$msg = '<div class="alert alert-danger">USERNAME ATAU PASSWORD TIDAK COCOK !</div>';
			$this->session->set_flashdata('msg', $msg);
			//redirect('admin');
		}
		redirect('admin');
		//kembalikan tampilan browser ke halaman depan (admin)
	}
?>

saya masih bingung juga nih, saya udah coba analisa belum tau bug nya dimana mungkin ada yang bisa ngasih solosi ya, terima kasih.

avatar rendy18
@rendy18

11 Kontribusi 0 Poin

Dipost 6 tahun yang lalu

Login untuk ikut Jawaban