php 에서 쿠키 를 사용 하여 사용자 로그 인 정 보 를 저장 하 는 실현 코드

쿠키 를 사용 하여 페이지 로그 인 정보 저장 1,데이터베이스 연결 설정 페이지:connectvars.php
 
<?php
//
define('DB_HOST', 'localhost');
//
define('DB_USER', 'root');
//
define('DB_PASSWORD', '19900101');
//
define('DB_NAME','test') ;
?>
2,로그 인 페이지:logIn.php
 
<?php
//
require_once 'connectvars.php';

$error_msg = "";
// cookie, $_COOKIE['user_id'] ,
if(!isset($_COOKIE['user_id'])){
if(isset($_POST['submit'])){// ,
$dbc = mysqli_connect(DB_HOST,DB_USER,DB_PASSWORD,DB_NAME);
$user_username = mysqli_real_escape_string($dbc,trim($_POST['username']));
$user_password = mysqli_real_escape_string($dbc,trim($_POST['password']));

if(!empty($user_username)&&!empty($user_password)){
//MySql SHA()
$query = "SELECT user_id, username FROM mismatch_user WHERE username = '$user_username' AND "."password = SHA('$user_password')";
//
$data = mysqli_query($dbc,$query);
// , COOKIE,
if(mysqli_num_rows($data)==1){
$row = mysqli_fetch_array($data);
setcookie('user_id',$row['user_id']);
setcookie('username',$row['username']);
$home_url = 'loged.php';
header('Location: '.$home_url);
}else{// ,
$error_msg = 'Sorry, you must enter a valid username and password to log in.';
}
}else{
$error_msg = 'Sorry, you must enter a valid username and password to log in.';
}
}
}else{// ,
$home_url = 'loged.php';
header('Location: '.$home_url);
}
?>
<html>
<head>
<title>Mismatch - Log In</title>
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>
<h3>Msimatch - Log In</h3>
<!-- $_COOKIE['user_id'] , , , -->
<?php
if(empty($_COOKIE['user_id'])){
echo '<p class="error">'.$error_msg.'</p>';
?>
<!-- $_SERVER['PHP_SELF'] , php -->
<form method = "post" action="<?php echo $_SERVER['PHP_SELF'];?>">
<fieldset style="width:250px;">
<legend>Log In</legend>

<label for="username">Username:</label>
<!-- , -->
<input type="text" id="username" name="username"
value="<?php if(!empty($user_username)) echo $user_username; ?>" />
<br/>
<label for="password">Password:</label>
<input type="password" id="password" name="password"/>
</fieldset>
<br/>
<input type="submit" value="Log In" name="submit"/>
</form>
<?php
}
?>
</body>
</html>
효과 그림:
3.로그 인 페이지:loged.php
 
<?php
// ,
if(isset($_COOKIE['username'])){
echo 'You are Logged as '.$_COOKIE['username'].'<br/>';
// “Log Out”, logOut.php cookie
echo '<a href="logOut.php"> Log Out('.$_COOKIE['username'].')</a>';
}
/** , cookie $_COOKIE['username']、
* $_COOKIE['user_id'] , */
?>
효과 그림:
4.쿠키 로그아웃 페이지:logOut.php(로그아웃 후 lonIn.php 로 다시 설정)
 
<?php
/**cookies */
if(isset($_COOKIE['user_id'])){
// cookie , ,
setcookie('user_id','',time()-3600);
setcookie('username','',time()-3600);
}
//location
$home_url = 'logIn.php';
header('Location:'.$home_url);
?>

좋은 웹페이지 즐겨찾기