铁人赛 Day10-- PHP SQL基本语法(五) -- 帐密登入验证 & mysqli_query

前言

昨天知道了怎麽使用 SELECTWHERE 之後,就要来实际做做看啦

(先附上整段程序码

<?php
    session_start();
    require_once 'db.php';

    $un = $_POST['username'];
    $pad = $_POST['password'];

    //如果使用者名称和密码都不为空
    if($un && $pad){
        //检测资料库是否有对应的username和password的sql
        $sql = "SELECT * FROM user WHERE username ='$un' and password = '$pad'";
        
        //执行sql
        $result = mysqli_query($link, $sql);
        
        //返回一个数值
        $rows=mysqli_num_rows($result);  

        //0 false 1 true
        if($rows){

            //如果密码以及帐号一样,显示登入成功
            $_SESSION['is_login'] = TRUE;

            //使用PHP来转址,前往後台
            header('Location: backend.php');

        }else{

            //要不然就是登入失败
            $_SESSION['is_login'] = FALSE;

            //在session 存一个 msg 变数
            $_SESSION['msg'] = '登入失败,请确认帐号密码!!';

            header('Location: member.php');
        }
    }else{
        
        $_SESSION['msg'] = '请输入帐号或密码!!';
        //使用 PHP header 来转址 返回登入页
        header('Location: member.php');
    }
?>

输入帐密时的画面(member.php)

<input placeholder="请输入帐号" name="username" id="username" type="text">
<input placeholder="请输入密码" name="password" id="password" type="text">

验证(check.php)

必须先使用我们之前讲过的POST来抓取输入的内容

$un = $_POST['username'];
$pad = $_POST['password'];

SELECT抓取所有来自 user资料表的资料
WHERE判断我们输入的帐号密码和资料库里的帐号密码资料是否相等

$sql = "SELECT * FROM user WHERE username ='$un' and password = '$pad'";

mysql_query() 函数

主要是用来判断资料库的查询是否正确,如果正确回传true,失败则回传false
( mysql_query() 必须在成功连结资料库的情况下使用 )

$result = mysqli_query($link, $sql);

并将结果传进参数 $resule ,好让mysqli_num_rows可以使用 $resule 参数,
并将所要查询的值都传进 $row 里

接下来就使用if else去判断并输出结果而已
94这麽简单/images/emoticon/emoticon01.gif

今天就先这样,那我们铁人赛Day11见罗!!


<<:  【Day 7】BERT的[CLS]真的能代表句义吗?

>>:  #10 - Clients & Servers(前导篇)

110/11 - 把照片储存在Pictures/应用程序名称资料夹 - 1

不太可能每个专案都那麽爽,可以把相片储存在内部储存空间/Android/data/packageNa...

Day 20 资料库评估 - Database Assessment (sqlmap, SQLite database browser)

前言 今天又进入到了新的一个分类,这个分类里面只有两个工具: SQLite database bro...

D-9. Rails API-Only 实作 && House Robber

API Application Programming Interface的缩写,主要在I,一个接口...

Day-25 事件机制(1)

在网页中的JavaScript程序码,必须经由事件触发(如:按下按钮,又称事件驱动event-dri...

[iT铁人赛Day15]JAVA更多的回圈

今天要来介绍的也是回圈 一个更好用的多重选择-switch叙述 当程序有较多的叙述,有较多的选择时,...