后台添加数字验证码错误,解决办法warning: undefined array key “sum”

warning: undefined array key "sum"
////WordPress登陆随机数学验证码开始
/*-----------------------------------------------------------------------------------*/
# 登录后台添加验证码第五种
function loper_login_english_figures() {
# 获取两个随机数, 范围0~99
$num1=rand(0,99);
$num2=rand(0,99);
echo "<p>
<label for='math' class='small'>验证码</label>
<input id='math' type='text' name='sum' class='input' size='25' placeholder='$num1 + $num2 = ? '>
<input type='hidden' name='num1' value='$num1'>
<input type='hidden' name='num2' value='$num2'></p>";
}
add_action('login_form','loper_login_english_figures');
# 判断验证码是否空白和错误
function loper_login_calculation($redirect, $bool, $errors) {
$sum=isset($_POST['sum']);
switch($sum){
case isset($_POST['num1'])+isset($_POST['num2']):break;
case null:$errors->add( 'zlinet', "<strong>错误</strong>:请输入验证码!" ); break;
default:$errors->add( 'zlinet', "<strong>错误</strong>:验证码不正确!" );}
}
add_action('login_redirect','loper_login_calculation', 9, 9);
//后台登陆数学验证码结束
5种方式给WordPress博客用户登录页面添加验证码
注意:本站启用了缓存系统,如果你的账户登陆不了,那是因为缓存导致,刷新再登陆一次即可。如还不行,只需打开任意一篇文章,然后登陆即可。所有资源均支持繁体中文,需繁体中文可通过头条號联繫站长提供。
使用WordPress程序后台登录是很方便,如果没有验证码很容易给工具暴力破解密码,所以我们要添加免插件运算验证码功能,也可以使用插件版的验证码功能,还是老一句插件用多了影响网站加载速度影响网速,之前我曾经分享过WordPress后台登录页面运算验证码方法,今天再分享5种给大家!
代码部署
登陆你的后台管理,选择【外观】–【编辑】–【模板函数 (functions.php)】直接添加下面全部代码:【?>前面】即可。
第一种:混合数验证码演示图:【跳转版】
- /*-----------------------------------------------------------------------------------*/
- /* WordPress登陆后台随机混合数验证码
- /*-----------------------------------------------------------------------------------*/
- # 登录后台添加验证码第一种
- function loper_login_english_figures() {
- # 获取英语和数字随机数, 范围0~99,目前是0~5,5位数
- $num1=substr(md5(mt_rand(0,99)),0,5);
- echo "<p>
- <label for='math' class='small'>验证码:$num1 </label>
- <input id='math' type='text' name='sum' class='input' value='' size='25'>
- <input type='hidden' name='num1' value='$num1'></p>";
- }
- add_action('login_form','loper_login_english_figures');
- # 判断验证码是否空白和错误
- function loper_login_calculation() {
- $sum=$_POST['sum'];
- switch($sum){
- case $_POST['num1']:break;
- case null:wp_die( __( '错误:请填入验证码!' ), '', array( 'back_link'=>true ) );break;
- default:wp_die( __( '错误:验证码不正确!' ), '', array( 'back_link'=>true ) );}
- }
- add_action('login_form_login','loper_login_calculation');
第二种:随机数字验证码演示图:【验证码在框里】【跳转版】
- /*-----------------------------------------------------------------------------------*/
- /* WordPress登陆后台随机数字验证码
- /*-----------------------------------------------------------------------------------*/
- # 登录后台添加验证码第二种
- function loper_login_english_figures() {
- # 获取两个随机数, 范围0~99
- $num1=rand(0,99);
- $num2=rand(0,99);
- echo "<p>
- <label for='math' class='small'>验证码</label>
- <input id='math' type='text' name='sum' class='input' size='25' placeholder='$num1 + $num2 = ? '>
- <input type='hidden' name='num1' value='$num1'>
- <input type='hidden' name='num2' value='$num2'></p>";
- }
- add_action('login_form','loper_login_english_figures');
- # 判断验证码是否空白和错误
- function loper_login_calculation() {
- $sum=$_POST['sum'];
- switch($sum){
- case $_POST['num1']+$_POST['num2']:break;
- case null:wp_die( __( '错误:请填入验证码!' ), '', array( 'back_link'=>true ) );break;
- default:wp_die( __( '错误:验证码不正确!' ), '', array( 'back_link'=>true ) );}
- }
- add_action('login_form_login','loper_login_calculation');
第三种:随机数字验证码演示图:【跳转版】
- /*-----------------------------------------------------------------------------------*/
- /* WordPress登陆后台随机数字验证码
- /*-----------------------------------------------------------------------------------*/
- # 登录后台添加验证码第三种
- function loper_login_english_figures() {
- # 获取两个随机数, 范围0~99
- $num1=rand(0,99);
- $num2=rand(0,99);
- echo "<p>
- <label for='math' class='small'>验证码:$num1 + $num2 = ? </label>
- <input id='math' type='text' name='sum' class='input' size='25'>
- <input type='hidden' name='num1' value='$num1'>
- <input type='hidden' name='num2' value='$num2'></p>";
- }
- add_action('login_form','loper_login_english_figures');
- # 判断验证码是否空白和错误
- function loper_login_calculation() {
- $sum=$_POST['sum'];
- switch($sum){
- case $_POST['num1']+$_POST['num2']:break;
- case null:wp_die( __( '错误:请填入验证码!' ), '', array( 'back_link'=>true ) );break;
- default:wp_die( __( '错误:验证码不正确!' ), '', array( 'back_link'=>true ) );}
- }
- add_action('login_form_login','loper_login_calculation');
第四种:随机混合数验证码演示图:【提示版】
- /*-----------------------------------------------------------------------------------*/
- /* WordPress登陆后台随机混合数验证码
- /*-----------------------------------------------------------------------------------*/
- # 登录后台添加验证码第四种
- function loper_login_english_figures() {
- # 获取英语和数字随机数, 范围0~99,目前是0,5【5位数】
- $num1=substr(md5(mt_rand(0,99999)),0,5);
- echo "<p>
- <label for='math' class='small'>验证码:$num1 </label>
- <input id='math' type='text' name='sum' class='input' size='25'>
- <input type='hidden' name='num1' value='$num1'></p>";
- }
- add_action('login_form','loper_login_english_figures');
- # 判断验证码是否空白和错误
- function loper_login_calculation($redirect, $bool, $errors) {
- $sum=$_POST['sum'];
- switch($sum){
- case $_POST['num1']:break;
- case null:$errors->add( 'zlinet', "<strong>错误</strong>:请输入验证码!" ); break;
- default:$errors->add( 'zlinet', "<strong>错误</strong>:验证码不正确!" );}
- }
- add_action('login_redirect','loper_login_calculation', 9, 9);
第五种:随机数字验证码演示图:【提示版】
- /*-----------------------------------------------------------------------------------*/
- /* WordPress登陆后台随机数字验证码
- /*-----------------------------------------------------------------------------------*/
- # 登录后台添加验证码第五种
- function loper_login_english_figures() {
- # 获取两个随机数, 范围0~99
- $num1=rand(0,99);
- $num2=rand(0,99);
- echo "<p>
- <label for='math' class='small'>验证码</label>
- <input id='math' type='text' name='sum' class='input' size='25' placeholder='$num1 + $num2 = ? '>
- <input type='hidden' name='num1' value='$num1'>
- <input type='hidden' name='num2' value='$num2'></p>";
- }
- add_action('login_form','loper_login_english_figures');
- # 判断验证码是否空白和错误
- function loper_login_calculation($redirect, $bool, $errors) {
- $sum=$_POST['sum'];
- switch($sum){
- case $_POST['num1']+$_POST['num2']:break;
- case null:$errors->add( 'zlinet', "<strong>错误</strong>:请输入验证码!" ); break;
- default:$errors->add( 'zlinet', "<strong>错误</strong>:验证码不正确!" );}
- }
- add_action('login_redirect','loper_login_calculation', 9, 9);