CI 프레임 워 크 가 쿠키 로그 인 을 실현 하 는 방법 에 대한 상세 한 설명
6373 단어 CI 프레임 워 크cookie
STEP 1:login.php
//
public function login(){
// ,
if(empty($_POST['username']) || empty($_POST['password'])){
$data['verifycode'] = rand(1000,9999);//
// session , :
$this->session->set_userdata($data);
// :CI $
//$this->parser->parse("admin/login",$data);
//smarty
$this->tp->assign("verifycode",$data['verifycode']);
//ci PHP
//$this->load->view('login',$data);// , : 2
// smarty
$this->tp->display("admin/login.php");
}else{
$username = isset($_POST['username'])&&!empty($_POST['username'])?trim($_POST['username']):'';//
$password = isset($_POST['password'])&&!empty($_POST['password'])?trim($_POST['password']):'';//
$verifycode = isset($_POST['verifycode'])&&!empty($_POST['verifycode'])?trim($_POST['verifycode']):'';//
//
if($verifycode == $this->session->userdata('verifycode')){
// , : 2
$user_info=$this->user_model->check_user_login($username,md5($password));
if($user_info['user_id'] > 0){
// id、username、password cookie
// cookie : php cookie
//setcookie("user_id",$user_info['user_id'],86500);
//setcookie("username",$user_info['username'],86500);
//setcookie("password",$user_info['password'],86500);
//echo $_COOKIE['username'];
// cookie : CI input
$this->input->set_cookie("username",$user_info['username'],3600);
$this->input->set_cookie("password",$user_info['password'],3600);
$this->input->set_cookie("user_id",$user_info['user_id'],3600);
//echo $this->input->cookie("password");//
//echo $this->input->cookie("username");//
//echo $_COOKIE['username'];// cookie
//echo $_COOKIE['password'];// cookie
// cookie : CI cookie_helper.php
// ,
//set_cookie("username",$user_info['username'],3600);
//echo get_cookie("username");
//session : id session
//$data['username']=$user_info['username'];
//$data['user_id']=$user_info['user_id'];
//$this->session->set_userdata($data);
//
// :site_url() base_url() , index.php, index.php
header("location:".site_url("index/index"));
}
}else{
//
header("location:".site_url("common/login"));
}
}
}
}
STEP 2:Usermodel.php
//cookie : , cookie , false, cookie , cookie , , , , 0
public function is_login(){
// cookie
if(empty($_COOKIE['username']) || empty($_COOKIE['password'])){
$user_info = false;
}else{
$user_info=$this->check_user_login($_COOKIE['username'],$_COOKIE['password']);
}
return $user_info;
}
// , , , false, :
public function check_user_login($username,$password){
// :$password md5
//$this->db->query("select * from ");
// :
//
// :
$arr=array(
'username'=>$username,//
'password'=>$password,//
'status'=>1 //
);
// database.php ,
$query = $this->db->get_where("users",$arr);
//
//$data=$query->result_array();
//
$user_info=$query->row_array();
if(!empty($user_info)){
return $user_info;
}else{
return false;
}
}
세 번 째 단계:다른 컨트롤 러:
public function __construct(){
//
parent::__construct();
$this->load->library('tp'); //smarty
$this->load->helper('url'); //url
$this->load->model("user_model");//User_model
$this->cur_user=$this->user_model->is_login();
if($this->cur_user === false){
header("location:".site_url("common/login"));
}else{
// , cookie
$this->input->set_cookie("username",$this->cur_user['username'],3600);
$this->input->set_cookie("password",$this->cur_user['password'],3600);
$this->input->set_cookie("user_id",$this->cur_user['user_id'],3600);
}
$this->load->library('pagination');//
$this->load->model("role_model");//member_model
$this->load->model("operation_model");// operation_model
$this->load->model("object_model");// object_model
$this->load->model("permission_model");// permission_model
}
더 많은 CodeIgniter 관련 내용 에 관심 이 있 는 독자 들 은 본 사이트 의 주 제 를 볼 수 있 습 니 다.,,,,,,,,,,,,codeigniter 입문 강좌,CI(CodeIgniter)프레임 워 크 진급 강좌본 고 에서 말 한 것 이 여러분 이 CodeIgniter 프레임 워 크 를 바탕 으로 하 는 PHP 프로 그래 밍 에 도움 이 되 기 를 바 랍 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
CI 프레임 워 크 인증 코드 CAPTCHA 보조 함수 용법 인 스 턴 스본 논문 의 사례 는 CI 프레임 워 크 인증 코드 CAPTCHA 보조 함수 의 용법 을 설명 하여 여러분 께 참고 하도록 공유 합 니 다.구체 적 으로 다음 과 같다. CAPTCHA 보조 함 수 를 사용 하면 인증...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.