php注册审核

注册审核:

 

通过注册审核,可以判断刚创建的账户是否可以登入。

后台管理员审核通过后,账号可以登入。

原理:通过数据库设置账号的一个字段状态,例: isok:1, isok:0,当isok为1时审核通过,此账号可以登入,当isok为0时审核未通过,此账号不可登入。

1.首先需要建立一个表:

表中的isok就是来判断是否通过审核,0就是没有通过审核,无法登入;

就是已经通过审核,可以登入;

2.建立一个登入页面:

<body>
<h1>登入页面</h1>
<form action="dengrucl.php" method="post">
    帐号:<input type="text" name="zhang"/>
    密码:<input type="text" name="mi"/>
    <input type="submit" value="登入"/>
</form>
</body>

登入处理:

<?php
$zhang = $_POST["zhang"];
$mi = $_POST["mi"];
//取值
$db = new mysqli("localhost","root","12345678","heiheihei");
//调用封装类

//对象
$sql = "select mi from mydb WHERE zhang = '{$zhang}'";
//写sql语句,防注入攻击,账号作为条件
$r = $db->Query($sql,1);
$attr = $r->fetch_row();
//来取到一串数据,我要的是数组
if(!empty($mi)&&$attr[0]==$mi)
    //判断吧亲,密码不能为空,并且取到的必须和我数据中的相同
{
    header("location:zhuceshenhe.php");
    //判断成功;进入这个页面
}
else
{
    echo "输得不对,你的问题!";
}

 

3.注册页面

<body>

<h1>注册页面</h1>
<form action="zccl.php" method="post">
<div>帐号:<input type="text" name="zhang"/></div>
<div>密码:<input type="text" name="mi"/></div>
<div>姓名:<input type="text" name="name"/></div>
    <input type="submit" value="注册"/>
</form>
</body>
注册处理:
<?php
$zhang = $_POST["zhang"];
$mi = $_POST["mi"];
$name = $_POST["name"];
include ("db.class.php");
$db = new db();
$sql = "insert into mydb VALUES ('{$zhang}','{$mi}','{$name}',0)";
//默认isok=0
if($db -> Query($sql,0))
//增删改+0
{
    header("location:dengru.php");

}
else{
    echo "失败";
}

 

4.更改条件

在登入处理里面

$sql = "select * from mydb WHERE zhang = '{$zhang}'";
//写sql语句,防注入攻击,账号作为条件
$r = $db->Query($sql,1);
$attr = $r->fetch_row();
//来取到一串数据,我要的是数组
if(!empty($mi)&&$attr[1]==$mi)
    //判断吧亲,密码不能为空,并且取到的必须和我数据中的相同
{
    if($attr[3])
    //看一下isok是否为ture
    {
        header("location:zhuceshenhe.php");
        //判断成功;进入这个页面
    }
    else{
        echo "未通过审核";
        //isok如果不为ture
    }
}

改为查所有,并且在判断里面在写一个判断,判断isok的状态

如果登入的帐号的isok为ture即通过审核

false则:

5.审核页面:

用于管理,通过审核

<body>

<h1>用户审核</h1>
<table border="1" cellpadding="0" cellspacing="0" width="100%">
    <tr>
        <td>用户名</td>
        <td>姓名</td>
        <td>操作</td>
    </tr>
 <?php
    include ("db.class.php");
    $db = new db();
    $sql = "select * from mydb";
    $arr = $db->Query($sql);

    foreach ($arr as $v)
    {
        $str = $v[3]?"<span style='已通过</span>":
            "<a href='tongguo.php?zhang={$v[0]}'>点击通过</a>";
            //三元运算符如果isko列为ture,让他显示已通过

        //如果为false,跳转到通过页面通过并传了一个主键值点击的帐号
        echo "<tr>
        <td>{$v[0]}</td>
         <td>{$v[2]}</td>
         <td>{$str}</td>
</tr>";
    }
    ?>


</table>

</body>

图:

6.再来做一个点击通过的处理页面:

<?php
$zhang = $_GET["zhang"];
include("db.class.php");
$db = new db();
$sql = "update mydb set isok=1 WHERE zhang = '{$zhang}'";

if($db->Query($sql,0))
{


       header("location:mainex.php");
}
else
{
    echo "修改失败";
}

完成图:

小花的账号已经可以登入

7.驳回操作

已通过按钮后面可以增加一个驳回的连接:

 

<?php
$zhang = $_GET["zhang"];
include("db.class.php");
$db = new db();
$sql = "update mydb set isok=0 WHERE zhang = '{$zhang}'";

if($db->Query($sql,0))
{


    header("location:mainex.php");
}
else
{
    echo "修改失败";
}

 

 图:

原文地址:https://www.cnblogs.com/xuan584521/p/6490857.html