PHP+MYSQL+COOKIE自动登陆3

<?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);
	exit("<script>
			alert('登录成功');
			location.href='dl.php';
		</script>");
}
else
{
	exit("<script>
			alert('登录失败');
			location.href='login.php';
		</script>");
}
?>

核心开始了,老弟:

$username=$_POST['username'];
//获取输入的密码
$password=$_POST['password'];
$autologin=(int)$_POST['autologin'];
作用:获取用户名+密码+一周内自动登陆7天看是否点击,为什么一周内自动登陆7天要加int因为是天啊
$username=mysqli_real_escape_string($link,$username);为安全🤔考虑啊(加密)
转义一些输入的特殊的字符把,转义成字符串

if($result&&mysqli_affected_rows($link)==1)
作用是:有数据,1:代表有,0代表没有,-1代表错误。
if($autologin)//点击了
	{
		$expTime=time()+7*24*60*60;
	}
	else//没有点击不启动它把
	{
		$expTime=0;
	}
	点击了就能点就能自动登陆7天啊,不需要在登陆了,但是注意一点7天后会自动退出,时间从你登陆后开始
	如果没有点击的话,会为0setcookie('islogin',1,$expTime);核心是用户名+点击一周内7+登录按钮都7天
问题:为什么不能用密码,因为销毁密码难道别的用户不能用这个密码了吗是吧
exit("<script>
			alert('登录成功');
			location.href='dl.php';
		</script>");
		登陆成功
		else
{
	exit("<script>
			alert('登录失败');
			location.href='login.php';
		</script>");
}
否则你懂的
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

贵哥的编程之路(热爱分享)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值