任何密码在没记牢的情况下长时间不用,都有可能彻底被忘记。银行卡密码咱还能拿着身份证去柜台重置,那么ZblogPHP网站后台管理员登录密码忘了该怎么办呢?如果网站已有大量数据,重装程序显然不可取。鉴于经常有用户问到,今天益吾库小编就来讲讲,ZblogPHP后台管理员登录密码忘记后修改重置的几种方法。
一、Zblog官方成员提供的【Z-BlogPHP密码找回工具】,全部代码如下:
<?php require './zb_system/function/c_system_base.php'; $zbp->Load(); if(isset($_GET['uid'])){ $m=$zbp->members[$_GET['uid']]; $un=$m->Name; $zbp->user = $m; if($blogversion>131221){ $ps=md5($m->Password . $zbp->guid); }else{ $ps=md5($m->Password . $zbp->path); } setcookie("username", $un,0,$zbp->cookiespath); setcookie("password", $ps,0,$zbp->cookiespath); if(isset($GLOBALS['hooks']['Filter_Plugin_VerifyLogin_Succeed'])){ foreach ($GLOBALS['hooks']['Filter_Plugin_VerifyLogin_Succeed'] as $fpname => &$fpsignal) { $fpname(); } } Redirect('zb_system/admin/?act=admin'); die(); } ?><!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta http-equiv="Content-Language" content="zh-cn" /> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache,must-revalidate"> <meta http-equiv="expires" content="0"> <meta name="robots" content="none" /> <title>Z-BlogPHP密码重置工具</title> <style type="text/css"> <!-- * { font-size: 14px; } body { margin: 0; padding: 0; color: #FFFFFF; font-size: 12px; background: #FFFFFF; font-family: "微软雅黑", "黑体", "宋体"; } h1, h2, h3, h4, h5, h6 { font-size: 18px; padding: 0; margin: 0; } a { text-decoration: none; } a:link { color: #FFFFFF; text-decoration: none; } a:visited { color: #FFFFFF; text-decoration: none; } a:hover { color: yellow; text-decoration: underline; } a:active { color: yellow; text-decoration: underline; } p { margin: 0; padding: 5px; } table { border-collapse: collapse; border: 0px solid #333333; background: #ffffff; margin-top: 10px; } td { border: 0px solid #333333; margin: 0; padding: 3px; } img { border: 0; } hr { border: 0px; border-top: 1px solid #666666; background: #666666; margin: 2px 0 4px 0; padding: 0; height: 0px; } img { margin: 0; padding: 0; } form { margin: 0; padding: 0; } #frmLogin { position: absolute; left: 50%; top: 40%; margin: -150px 0px 0px -300px; padding: 0; overflow: hidden; width: 600px; height: 400px; background-color: #3a6ea5; border: 0px solid #B3C3CD; box-shadow: 0px 0px 15px black; } #frmLogin h3 { padding: 15px 0 5px 0; margin: 0; text-align: center; color: white; font-size: 24px; height: 30px; } #divHeader { margin: 0 0; padding: 8px; } #divMain { height: 280px; } #divFooter { margin: 5px 0px 0 0px; text-align: center; padding: 2px; } #divMain_Top { padding: 8px; padding-bottom: 0; } #divMain_Center { padding: 5px; } #divMain_Bottom { text-align: right; padding: 5px; } #txaContent { border: 1px solid #A1B0B9; background: #FFFFFF; } --> </style> </head> <body> <form id="frmLogin" method="post"> <h3>Z-BlogPHP免输入密码登陆工具</h3> <div id="divHeader"> <a href="http://www.rainbowsoft.org/" target="_blank">Z-Blog主页</a> | <a href="http://bbs.rainbowsoft.org" target="_blank">Zblogger社区</a> | <a href="http://wiki.rainbowsoft.org/" target="_blank">Z-Wiki</a> | <a href="http://blog.rainbowsoft.org/" target="_blank">菠萝阁</a> | <a href="http://www.dbshost.cn/" target="_blank">DBS主机</a></div> <div id="divMain"> <input type="hidden" name="userid" id="userid" value="0" /> <?php echo '<p></p>'; foreach ($zbp->members as $key => $m) { if($m->Level < 2) echo '<p style="padding:10px;">[管理员]' . $m->Name . '<input style="float:right;" type="button" value=" 登录 " onclick="window.location=\'?uid='. $m->ID .'\'" /></p>'; } ?> </div> <div id="divFooter"><b>[注意] <font color="yellow"> 此工具非常危险,使用后请立刻通过<u>FTP</u>删除或改名.</font></b></div> </form> </body> </html>
请将以上代码保存为任意名称的PHP文件,如nologin.php[点击下载][点击下载],并上传到网站根目录,然后通过“你的网站域名/nologin.php”访问打开,正常情况可以看到以下界面:
二、资深Zblog网友涂涂博客提供的VerifyLogin()更改方法,以下是全部代码:
<?php require '../../../zb_system/function/c_system_base.php'; require '../../../zb_system/function/c_system_admin.php'; $id='1'; $am = $zbp->GetMemberByID($id); $_POST['savedate']=0; $_POST['dishtml5']=0; if($zbp->Verify_Final($am->Name,$am->Password,$m)){ $zbp->user = $m; $un = $m->Name; $ps = $m->PassWord_MD5Path; $sd = (int)GetVars('savedate'); $addinfo=array(); $addinfo['dishtml5']=(int)GetVars('dishtml5', 'POST'); $addinfo['chkadmin']=(int)$zbp->CheckRights('admin'); $addinfo['chkarticle']=(int)$zbp->CheckRights('ArticleEdt'); $addinfo['levelname']=$m->LevelName; $addinfo['userid']=$m->ID; $addinfo['useralias']=$m->StaticName; if ( $sd == 0) { setcookie("username", $un, 0, $zbp->cookiespath); setcookie("password", $ps, 0, $zbp->cookiespath); setcookie("addinfo" . str_replace('/','',$zbp->cookiespath), json_encode($addinfo), 0, $zbp->cookiespath); } else { setcookie("username", $un, time() + 3600 * 24 * $sd, $zbp->cookiespath); setcookie("password", $ps, time() + 3600 * 24 * $sd, $zbp->cookiespath); setcookie("addinfo" . str_replace('/','',$zbp->cookiespath), json_encode($addinfo), time() + 3600 * 24 * $sd, $zbp->cookiespath); } Redirect($zbp->host.'zb_system/admin/?act=admin'); } ?>
同样将以上代码保存为PHP文件并上传到网站,访问打开就能绕过登录步骤直接进入后台,接下来你可以做的就是马上修改管理员密码。除非你坚信别人永远无法猜到或看到该文件名,否则操作完毕请一定记得删除该文件。
三、最后简单介绍下直接进数据库修改管理员密码的方法:进入网站数据库找到并打开名为“zbp_member”的数据表,就能马上看到你眼熟的管理员账号,mem_Password那一项对应的即是其特殊加密过的密码值,使用“37f26681b22f68c10c8fe579f031879e”这串字符替换它就代表密码将被重置为“12345678”。不懂怎么进数据库?不会改数据表?请选用前两种方法!
以上方法都不能解决问题,或者想深入了解数据库直接修改密码方法,欢迎联系小编探讨。