check login php,笔记二:LoginCheck.php - 曾知心知欢

接着上一个笔记,进行登陆页面的处理时,我们需要做以下几点:

一、对 Login

页面输入的值进行接收

二、连接数据库

三、编写 sql

语句,并判断

sql

语句执行的情况,如果成功就让他有权限并跳转到管理页面,不成功就返回重新填写;

首先,我们应该书写出 php

语法的格式,就像

HTML

中的

一样,我们要先写出

PHP

的格式:

然后,我们这里是在登录管理系统,需要一个通关证,就如同你进学校需要校卡一样,在 PHP

开始的时候,就应该制作一个校卡,然后判断这个值是不是我们学校的学生,如果这个学生是我们学校的,那么就给他一个校卡,让他可以看到管理页面,这里就要用到

session

了,可以多查询一下,开启

session

的语句是:

session_start;

Session_start;// 注意是小写。

?>

第一步,接收值, php

并不像

C

语言一样需要定义变量,这里可以直接使用变量:

$uid=$_POST[“name”];

$pwd=$_POST[“pw”];//这里最好对密码进行md5加密过后再存到数据库当中

$pwd = md5($pwd);

PS: 这里需要说明一下,在

Login

页面中,

form

的传值方式是

post

,所以这里接收方式也应该是

post

,但是一定要注意接值的格式是

$_POST[

“name”] 引号中的是你要接收的值的名字。

第二步:连接数据库,在 PHP

中,连接数据库有几种方法,我们先介绍

mysqli

方式(使用

mysqli

之前需要在

php

配置下面开启这个方式)。

$db = new mysqli(“数据库的 IP

”,”数据库账号”,”数据库密码”,”表名”);

四、第三步:编写 sql

语句,并判断

sql

语句执行的情况,如果成功就让他有权限并跳转到管理页面,不成功就返回重新填写。这里我们是在登录系统,也就是说这些账号密码应该是存在我们的数据库中的,那么,我们就要将他输入的值放到数据库中去校验是不是有这些值。

$sql = “select * from  表名

where uid =

‘$uid’ and pwd = ‘$pwd’ ”;

$rs = $db -> query($sql);// 执行

sql

语句,并将结果传给

$rs

学习过 SQL

的都知道这个语句,就是查询某表中

uid

字段为

$uid

pwd

字段为

$pwd

的结果。

但是如果使用这种语句的话,安全性直接不能谈了,一个简单的 SQL

注入都能登陆进去。

所以这里我们需要复杂一点的语法来判断这些值:先查询这个表中,有没有 uid

$uid

的值,如果有,再验证密码,密码正确才完成登陆;如果没有,就直接说账号密码错误,并返回到登录页面,下面来实现一下:

$sql = “select * from  表名

where uid =

‘$uid’ ”;

$rs = $db -> query($sql);

$rows_count = mysqli_num_rows($rs);// 这句是说读取了几条数据。

If($rows_count >= 1){// 如果得到的数据

>=1

条就执行以下语句

$row = $rs -> fetch_array();// 将得到的数据以数组的形式存到

$row

If($row){// 如果存储成功就执行以下语句

If($row[“pwd”]==$pwd{// 如果数据当中的

pwd

值和

$uid

相同,就执行以下语句

$_SESSION[“admin”] = $uid;// 这里是将通行证颁发给

$uid

Echo “”;

Exit;// 一定要记到退出,不然就会执行下面的账号,密码错误的语句!

}

}

}

Echo “”;// 如果没有读到数据,就直接弹。

Exit;

处理页面的笔记就到这里了。

实战开发的完整代码:

require "dbCoon.php";//遇到错误的时候停止执行

//include "dbCoon.php";//遇到错误的时候继续执行

//接收用户信息

session_start();

$yh=$_POST["uid"];

$mm=$_POST["pwd"];

if(empty($yh)||empty($mm))

{

echo "";

exit;

}

$mm = md5($mm);//md5加密

//拼装SQL语句,注:这里存在安全隐患

$sql = "select * from userinfo where uid='$yh';";

//判断SQL语句,判断用户是否合法(如果合法,则记录登录信息后跳转;否则返回重新输入)

$rs = $db -> query($sql);

//读取了几条数据

$rows_count = mysqli_num_rows($rs);

if($rows_count >= 1)

{

//对密码进行验证

$row = $rs -> fetch_array();

if($row)

{

if($row["pwd"] == $mm)

{

$_SESSION["blog_manager"]=$yh;

header("Location:AdminPage/AdminIndex.php");

exit;

}

}

}

echo "";

$rs->free();

$db->close();

?>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值