php判斷錯誤次數的實作方法:1、實例化redis資料庫;2、模擬資料庫資訊;3、接受使用者輸入資訊;4、判斷資訊輸入錯誤的次數即可。
本文操作環境: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('127.0.0.1', 6379); //模拟数据库信息 $userinfo = array('xxx'=>'000000','yyy'=>'111111'); //接受用户输入信息 $name = $_POST['username']; $passwd = $_POST['userpasswd']; //判断是否已经错误三次 if($redis->get($name) >=3){ //以错三次 为该用户设置操作等待时间 60秒 $redis->expire($name,60); echo '请您1分钟后在登入吧';exit(); } //判断用户是否存在 if(!array_key_exists($name,$userinfo)){ echo '用户名不存在'; exit(); } //判断密码是否正确 if($passwd != $userinfo[$name]){ //当前错误不是第一次 将错误次数加 1 if($redis->exists($name)){ $redis->incr($name); }else{ //第一次错误将错误信息存入redis中 $redis->set($name,1); } echo '密码不正确'; exit(); }else{ echo '成功'; }
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中文網其他相關文章!