首頁 >後端開發 >PHP問題 >php 怎麼判斷錯誤次數

php 怎麼判斷錯誤次數

藏色散人
藏色散人原創
2021-11-08 09:47:481260瀏覽

php判斷錯誤次數的實作方法:1、實例化redis資料庫;2、模擬資料庫資訊;3、接受使用者輸入資訊;4、判斷資訊輸入錯誤的次數即可。

php 怎麼判斷錯誤次數

本文操作環境:Windows7系統、PHP7.1版、DELL G3電腦

php 怎麼判斷錯誤次數?

php 結合redis 限制用戶登錄密碼錯誤次數

就用原生的面向過程寫了個小dome ,資料庫資訊用數組代替了.

整體想法是這樣的,具體怎麼用,具體的自己放框架裡改改優化一下就ok的。

php程式碼:

<?php
/**
 * Created by PhpStorm.
 * User: rjj
 * Date: 2017/7/2
 * Time: 20:58
 */
//实例化redis数据库
$redis=  new Redis();
$redis->connect(&#39;127.0.0.1&#39;, 6379);
//模拟数据库信息
$userinfo = array(&#39;xxx&#39;=>&#39;000000&#39;,&#39;yyy&#39;=>&#39;111111&#39;);
//接受用户输入信息
$name = $_POST[&#39;username&#39;];
$passwd = $_POST[&#39;userpasswd&#39;];
//判断是否已经错误三次
if($redis->get($name) >=3){
    //以错三次  为该用户设置操作等待时间  60秒
    $redis->expire($name,60);
    echo &#39;请您1分钟后在登入吧&#39;;exit();
}
//判断用户是否存在
if(!array_key_exists($name,$userinfo)){
    echo &#39;用户名不存在&#39;;
    exit();
}
//判断密码是否正确
if($passwd != $userinfo[$name]){
    //当前错误不是第一次  将错误次数加 1
    if($redis->exists($name)){
        $redis->incr($name);
    }else{
        //第一次错误将错误信息存入redis中
        $redis->set($name,1);
    }
    echo &#39;密码不正确&#39;;
    exit();
}else{
    echo &#39;成功&#39;;
}

html程式碼

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>错误限制</title>
</head>
<body>
<form method="post" action="redisLogin.php">
    <input type="text" name="username" placeholder="请输入用户名">
    <input type="text" name="userpasswd" placeholder="请输入密码">
    <button type="submit">登入</button>
</form>
</body>
</html>

推薦學習:《PHP影片教學

以上是php 怎麼判斷錯誤次數的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn