获取代码点火器中的Id用户


Get Id User in codeigniter

我有两个数据库。tabel_jawaban和tabel_user。

在tabel_user中有一个名为"id_user"的字段

我想在注册时将"id_user from tabel_user"移动/调用到"id_user in tabel_jawaban中"。

但我失败了。有人能帮忙吗?这是我的代码。。。。

模型用户:

<?php  if ( ! defined('BASEPATH')) exit('No direct script access allowed');
	class Model_user extends CI_Model {
		function __construct() { 
		parent::__construct();
		$this->tbl = "tabel_user";
		} 
		
		function cek_user($username="",$password="") {
		$query = $this->db->get_where($this->tbl,array('username' => $username, 'password' => $password));
		$query = $query->result_array();
		return $query;
		}
		
		function ambil_user($username)
		{
        $query = $this->db->get_where($this->tbl, array('username' => $username));
        $query = $query->result_array();
        if($query){
            return $query[0];
        }
		}
		
		function ambil_iduser($idUser)
		{
        $query = $this->db->get_where($this->tbl, array('id_user' => $idUser));
        $query = $query->result_array();
        if($query){
            return $query[0];
        }
		}
		
		function getAllUser() {
		$this->db->from('tabel_user');
		return $this->db->get();
		}
		
		function deleteUser($id)
		{
		$this->db->where('id_user', $id);
        $this->db->delete('tabel_user');	
		}
	}
?>

Jawaban_model:

<?php  if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Jawaban_model extends Ci_Model {
  public function Ambil() {
    $data = $this->db->query('select * from tabel_jawaban, tabel_user where tabel_jawaban.id_user=tabel_user.id_user');
    return $data;
  }
  public function AmbilNilai2($iduser) {
    $data = $this->db->query("select * from tabel_jawaban, tabel_user where tabel_jawaban.id_user=tabel_user.id_user AND tabel_jawaban.id_user='$iduser'");
    return $data;
  }
  public function Simpan($tabel, $data){
    $res = $this->db->insert($tabel, $data);
    return $res;
  }
  public function UpdateTotalNilai($id_jawaban,$data)
  {
    $this->db->where('id_jawaban',$id_jawaban);
    $this->db->update('tabel_jawaban',$data);
  }
}

控制器:

function daftar(){
		$ambil_akun = $this->session->userdata('uname');
        $idUser = $this->user_model->AmbilIdUser($ambil_akun);
		$data = array(			
			'id_user' => $idUser,
			'tgl_tes' => date("Y-m-d"),
		);
		$this->jawaban_model->Simpan('tabel_jawaban', $data);
		$id=mysql_insert_id();		
		redirect('dashboard/soaluser/'.$id);
		}

您的代码中有一个小的拼写错误。据我所知,你的user_model->方法是

function ambil_iduser($idUser)
        {
        $query = $this->db->get_where($this->tbl, array('id_user' => $idUser));
        $query = $query->result_array();
        if($query){
            return $query[0];
        }

然而,在你的控制器中,你在这里调用不同的方法,

 $idUser = $this->user_model->AmbilIdUser($ambil_akun);

方法的名称与ambil_iduserAmbilIdUser不同。

正确的控制器调用状态应该是

function daftar(){
        $ambil_akun = $this->session->userdata('uname');
        $idUser = $this->user_model->ambil_iduser($ambil_akun);
        $data = array(          
            'id_user' => $idUser,
            'tgl_tes' => date("Y-m-d"),
        ...