function login(){
$data = array('username' => $_POST['username'], 'password' => $_POST['password']);
$this->form_validation->set_rules('username', 'Username', 'required|callback_username_check');
$this->form_validation->set_rules('password', 'Password', 'required');
if($this->form_validation->run() == FALSE){
$this->load->view('Login');
} else {
$result = $this->LoginModel->account_check($data);
if($result){
if($result['status'] = 'admin'){
$isLoggedin = array('user_type' => 'administrator' ,'admin_name' => $result['username'] , 'is_loggedin' => TRUE);
$this->session->set_userdata($isLoggedin);
$this->load->view('admin/homepage');
} else if($result['status'] = 'user'){
$isLoggedin = array('user_name' => $row['username'] , 'user_type' => 'user' , 'is_loggedin' => TRUE);
$this->session->set_user($isLoggedin);
$this->load->view('user/homepage');
}
}
}
}
function username_check($username){
$result = $this->LoginModel->username_check($username);
if($result != TRUE){
$this->form_validation->set_message('username_check' , 'Username does not exist');
return FALSE;
} else return TRUE;
}
function username_check($username){
$query = $this->db->get_where('admin' , array('username' => $username))->result_array();
if(!empty($query)){
return TRUE;
}else{
$query = $this->db->get_where('user_mst', array('username' => $username))->result_array();
if(!empty($query)){
return TRUE;
}else return FALSE;
}
}
function account_check($data){
$query = $this->db->get_where('admin' , array('username' => $data['username'] , 'password' => $data['password']))->result_array();
if(!empty($query)){
foreach($query as $row){
$result['status'] = 'admin';
$result['username'] = $row['username'];
$result['password'] = $row['password'];
return $result;
}
} else{
$query = $this->db->get_where('user_mst' , array('username' => $data['username'] , 'password' => $data['password']))->result_array();
if(!empty($query)){
foreach($query as $row){
$result['status'] = 'user';
$result['username'] = $row['username'];
$result['password'] = $row['password'];
return $result;
}
}
}
}
어떻게 메신저보기 당 계정이 로그인되어있는 경우 경우를 실행하려면이 옵션을 사용하려고하며이 경우, i는 사용자 데이터에 액세스 할 admin acc.
내가 100 % 맞으면 어떻게 세션을 사용하는지에 대한 의견을 듣고 싶습니다. 또한
, 내가 질문이
이 코드 <?php if (! defined('BASEPATH')) exit('No direct script access allowed'); ?>
블록에 직접 액세스,보기 액세스를 방지하지만 사용자가 로그인되어있는 경우 구체적으로 확인되지.
, 내가 어떻게 할 수 이것을 세션과 함께 사용하십시오. 그 중복 말해주십시오,
BASEPATH 질문에 대해서는 - 그렇지 않습니다. 모든 페이지 액세스는 CI 컨트롤러를 통해 이루어집니다. 사용자가 여기에 로그인했는지 확인한 다음보기를로드하십시오. 세션 변수에 사용자 로그인이 있으므로이를 수표로 사용하십시오. –
더 설명해 주시겠습니까? 더 이상 기본 경로가 필요하지 않습니다. 흠, 그래. 기본적으로 사용자가 로그인하면 컨트롤러마다 확인 만하면됩니다. 생성자를 올바르게 생성 하시겠습니까? –