cookie登陆+我的博客里面有核心解释

2020-10-28 11:40:11 浏览数 (1)

代码语言:javascript复制
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
</head>
<body>
	<h1>登录页面</h1>
	<form action="doActive.php" method="POST">
		<table border="1" width="80%" bgcolor="#abcdef" cellpadding="0" cellspacing="0" >
			<tr>
				<td>用户名</td>
				<td><input type="text" name="username" id=""></td>
			</tr>
			<tr>
				<td>密码</td>
				<td><input type="password" name="password" id=""></td>
			</tr>
			<tr>
				<td colspan="2"><input type="checkbox" name="autologin" id="" value="1">一周内自动登录</td>
			</tr>
			<tr>
				<td colspan="2"><input type="submit" name="islogin" value="登录" ></td>
			</tr>
		</table>
	</form>
</body>
</html>

//退出页面

代码语言:javascript复制
<?php
header("content-type:text/html;charset='utf-8'");
setcookie('username','',time()-1);
setcookie('islogin','',time()-1);
setcookie('autologin','',time()-1);
exit(
"<script>
alert('退出成功');
location.href='dl.php';
</script>"
);
?>

//判断是否成功页面

代码语言:javascript复制
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
</head>
<body>
	<!--这里是如果登录成功,就不应该出现请登录了呀应该出现登录的内容-->
您好:
<?php
header("content-type:text/html;charset='utf-8'");

if(empty($_COOKIE['autologin']))//一周内自动登录不点击的情况下,就进行里面啊然后是
{
	if((empty($_COOKIE['islogin']))||(empty($_COOKIE['username'])))//意思是你第一没有做登录或者是你没有填写用户名的话,就请登录
	{
		echo "<a href='login.php'>请登录</a>";
	}
}
else
	{
		echo $_COOKIE['username'].'!!!!';
		//如果出现了按下登录按钮的话,或者输入用户名的话,就不应该出现请登录的画面了呀
	}

	//如果点击了一周七天登录的话,就不应该出现您好请登录的话了,应该出现名字
	echo "<a href='login.php'>退出</a>";

/*
 $_COOKIE['haslogin'])表示从Cookie中取autologin
装是setcookie就装了呀
,*///
//这里的思想就是看你是点击一周还是不点击一周啦,点击一周的话,不能显示请登录;1,显示名字页面,如果什么都没有的话,就请登录,
//反正就是只要一周或者输入用户名或者按下登录按钮的话,就会显示名字页面,否则请登录吧
?>	
</body>
</html>

//登陆成功页面

代码语言:javascript复制
<?php


//先获取用户名是谁
$username=$_POST['username'];
//获取输入的密码
$password=$_POST['password'];
$autologin=(int)$_POST['autologin'];//为什么加int,因为是自动登录几天所以这样啊
//然后是知道了用户名与密码之后是链接
$link=mysqli_connect('localhost','root','','test44');
//然后是指定php链接数据库的字符集
mysqli_set_charset($link,'utf8');

//然后是
$username=mysqli_real_escape_string($link,$username);//为安全考虑
$sql="select id,username from user2 where username='{$username}' and password='{$password}'";
//然后运行
$result=mysqli_query($link,$sql);
//然后是如果有数据存在并且
if($result&&mysqli_affected_rows($link)==1)/*一个 > 0 的整数表示所影响的记录行数*/
{
	if($autologin)//点击了
	{
		$expTime=time() 7*24*60*60;
	}
	else//没有点击不启动它把
	{
		$expTime=0;
	}
	setcookie('autologin',1,$expTime);
	setcookie('username',$username,$expTime);
	setcookie('islogin',1,$expTime);
	setcookie("password",$password,$expTime);
	exit("<script>
			alert('登录成功');
			location.href='dl.php';
		</script>");
}
else
{
	exit("<script>
			alert('登录失败');
			location.href='login.php';
		</script>");
}
?>

0 人点赞