2017-04-25 41 views
0

我想在會話中設置公司名稱並檢索相同的連接到不同的數據庫,我設置會話使用$ this-> session-> set_userdata ($ newdata);並使用$ companyName = $ this-> session-> userdata ['newdata'] ['company']檢索會話。但不知何故檢索沒有發生,我無法加載正確的數據庫更新註銷信息,即它不會通過連接到不同的數據庫更新pr_system_attendance表。如果我回復$ company,我會得到正確的值;在$ company = $ row1-> company後面;這是FYI檢索會話值並連接到不同的數據庫在註銷功能

我的模型代碼如下:

\t \t function check_admin_login(){ 
 
\t \t \t 
 
\t \t \t $this->db->where('username', trim($this->input->post('username'))); 
 
\t \t \t $this->db->where('userpass ', sha1(trim($this->input->post('userpass')))); 
 
\t \t \t $this->db->where('status', '1'); 
 
\t \t \t $this->db->where('deleted', '0'); 
 
\t \t \t $this->db->select('*'); 
 
\t \t \t $query = $this->db->get($this->myTables['users']); 
 
\t \t \t if($query->num_rows() > 0){ 
 
\t \t \t \t $row = $query->row(); 
 
\t \t \t \t $this->db->where('userid', $row->id); 
 
\t \t \t \t $this->db->select('firstname,lastname,profileimage,company'); 
 
\t \t \t \t $query1 = $this->db->get($this->myTables['users_details']); 
 
\t \t \t \t $row1 = $query1->row(); 
 
\t \t \t \t $newdata = array(
 
\t \t \t \t \t \t \t \t \t 'is_admin_logged_in' => true, 
 
\t \t \t \t \t \t \t \t \t 'admin_user_name' => $row->username, 
 
\t \t \t \t \t \t \t \t \t 'admin_userpass' => $row->userpass, 
 
\t \t \t \t \t \t \t \t \t 'admin_id'=>$row->id, 
 
\t \t \t \t \t \t \t \t \t 'admin_lastlogin'=>date("d-m-Y H:i:s",$row->lastlogin), 
 
\t \t \t \t \t \t \t \t \t 'admin_lastloginip'=>$row->lastloginip, 
 
\t \t \t \t \t \t \t \t \t 'lastrefresh'=>time(), 
 
\t \t \t \t \t \t \t \t \t 'company'=>$row1->company 
 
\t \t \t \t \t \t \t); 
 
\t \t \t \t \t \t \t $company = $row1->company; 
 
\t \t \t \t \t $this->session->set_userdata($newdata); \t 
 
\t \t \t \t $companyName = $this->session->userdata['newdata']['company']; 
 
\t \t \t 
 
\t \t \t \t $this->update_admin_login_time($this->session->userdata('admin_id')); 
 
\t \t \t \t $this->admin_init_elements->set_global_user($row->username,$row->userpass); 
 
\t \t \t \t if($this->input->post('remember')) 
 
\t \t \t \t { 
 
\t \t \t \t \t $cookie = array('name' => 'username','value' => $row->username,'expire' => time()+7600,'secure' => false); 
 
\t \t \t \t \t $this->input->set_cookie($cookie); 
 
\t \t \t \t } 
 
\t \t \t \t $name = $row1->firstname.' '.$row1->lastname; 
 
\t \t \t \t $cookie1 = array('name' => 'name','value' => $name,'expire' => time()+7600,'secure' => false); 
 
\t \t \t \t $this->input->set_cookie($cookie1); 
 
\t \t \t \t $cookie2 = array('name' => 'image','value' => $row1->profileimage,'expire' => time()+7600,'secure' => false); 
 
\t \t \t \t $this->input->set_cookie($cookie2); 
 
\t \t \t \t 
 
\t \t \t \t 
 
\t \t \t \t return 'Login Successful'; 
 
\t \t \t }else{ 
 
\t \t \t \t return 'Incorrect Username or Password.'; 
 
\t \t \t } 
 
\t \t \t 
 
\t \t } 
 
\t \t function logout() 
 
\t \t { 
 
\t \t \t global $USER; 
 
\t \t \t $companyName = $this->session->userdata['newdata']['company']; 
 
\t \t 
 
\t \t \t $otherdb = $this->load->database("$companyName", TRUE); 
 

 
\t \t \t $this->db->from("$companyName"."pr_users"); 
 
\t \t \t $query1 = $this->db->query("Select * from pr_system_attendance where userid = '".$USER->id."' and DATE(`login_time`) = CURDATE()"); 
 
\t \t \t date_default_timezone_set('Asia/Calcutta'); 
 
\t \t \t if($query1->num_rows() > 0) 
 
\t \t \t { 
 
\t \t \t \t $row = $query1->row(); 
 
\t \t \t \t 
 
\t \t \t \t $sql1 = "UPDATE pr_system_attendance set logout_time = '".date('Y-m-d H:i:s')."' where userid = '".$USER->id."' and DATE(`login_time`) = CURDATE()"; 
 
\t \t \t \t 
 
\t \t \t \t 
 
\t \t \t \t 
 
\t \t \t \t $query2 = $this->db->query($sql1); 
 
\t \t \t \t 
 
\t \t \t \t 
 
\t \t \t } 
 
\t \t \t $sql="UPDATE `".$this->myTables['users']."` SET 
 
\t \t \t \t \t `if_online` = '0' 
 
\t \t \t \t \t WHERE `id` = '".$USER->id."'" ; 
 
\t \t \t $query=$this->db->query($sql); \t 
 
\t \t \t 
 
\t \t }

回答

1

獲取會話數據下面的代碼行

//$companyName = $this->session->userdata['newdata']['company']; 
$companyName = $this->session->userdata('company'); 
+0

感謝ü,這解決了它 – shank