emlog后台登录失败邮件通知-凯发网娱乐官网

微信扫一扫,分享到朋友圈

0

前面说到emlog后台登录参数加密,下面我们说说如何给emlog添加后台登录失败邮件通知的功能,本次我们需要用到mail函数,当然也就是需要25端口发信,如果是阿里云等一些不支持25口发信的童鞋可以放弃或者学着本篇文章进行改造成smtp发信即可

第一步:

找到路径/admin/globals.php文件第17行,也就是if ($action == login) {这,然后一直选到(//退出)这行的前面,接着我们粘贴覆盖以下代码,其中的一些个人信息请改成自己的,我都已经做好备注了

if ($action == login) {
  $ip = isset($_post['ip']) ? addslashes(trim($_post['ip'])) : '';//获取登录者ip
  $username = isset($_post['user']) ? addslashes(trim($_post['user'])) : '';
  $password = isset($_post['pw']) ? addslashes(trim($_post['pw'])) : '';
  $ispersis = isset($_post['ispersis']) ? intval($_post['ispersis']) : false;
  $img_code = option::get('login_code') == 'y' && isset($_post['imgcode']) ? addslashes(trim(strtoupper($_post['imgcode']))) : '';
  $loginauthret = loginauth::checkuser($username, $password, $img_code);
  if ($loginauthret === true) {
    loginauth::setauthcookie($username, $ispersis);
    emdirect("./");
  } else{
    $blogname = '陌涛博客';//博客名称
    $blogurl = 'https://imotao.com';//博客地址
    $bloglogo = '#';//博客logo
    $emailarr = '[email protected]';//收信邮箱
    $mailname = 'imotao';//发件人(请勿中文)
    $subject = '密码错误提示';//邮件标题
    $subject = "=?utf-8?b?".base64_encode($subject)."?=";//防止拉黑字符编码
    $header  = "mime-version: 1.0\r\n"; 
    $header .= "from: $mailname\r\n";//来自发件人
    $header .= "content-type: text/html; charset=utf-8\r\n";//设置头编码
    $preview = '
尊敬的管理员您好!

'.$blogname.'有一条登录失败的记录产生,若登录操作不是您产生的,请及时注意网站安全!

失败信息如下
登录名 '.$username.'
尝试的密码 '.$password.'
登录时间 '.date("y-m-d h:i:s").'
登录ip '.$ip.'

(此邮件由系统自动发出, 请勿回复。)

邮件来自:

'; mail($emailarr,$subject,$preview, $header); loginauth::loginpage($loginauthret); } }

上面操作完成后,进行第二步

第二步:

找到路径/admin/views/login.php(如果使用的不同主题请自行变更路径)

我们可以在第二行插入一下代码


插入完成后,找到以下内容

action="./index.php?action=login"

之后在form表单内插入以下代码


插入完成后,就大功告成,刷新浏览器缓存,使用错误的账号、密码进行登录测试,如果不出意外就能收到邮件了。

温馨提示:如果要使用smtp发信请更改第一步中else后面的内容即可,会玩smtp发信,应该就会玩,不会玩的请勿乱来。修改前记得备份admin目录

展开阅读全文

微信扫一扫,分享到朋友圈

0
这个博主很懒,懒死了。

你也可能喜欢

发表评论

this site uses akismet to reduce spam. .

插入图片