织梦CMS用Mysql8.0没办法登录后台的解决方法

时间:2021-09-06 23:39来源:www.hzhc18.com作者:未知点击:

导读:
扫描关注公众号

今天一个顾客联系大家的技术,反馈说安装之后,但登录后台,一直提示用户名没有。一般这个缘由有两个(1、数据库链接信息不对 2、数据库表中的用户名不是默认的admin,被修改过)经过多发查证,这两个缘由都被排除去,最后发现原来这位顾客用的是mysql8.0的数据库。

因mysql 8.0新拟定的语句表名限制条件被DEDE自带的后台用户登录检查语句指定表别名所违背而引起的bug。怎么办呢?

找到织梦CMS的文件目录, 在include子目录下找到userlogin.class.php, 249行左右看到如下语句:

//只允许用户名和密码用0-9,a-z,A-Z,'@','_','.','-'这部分字符

$this->userName = preg_replace;

$this->userPwd = preg_replace;

$pwd = substr, 5, 20);

$dsql->SetQuery;

$dsql->Execute;

$row = $dsql->GetObject;

其中SetQuery就是设定将要实行的sql语句, 下一行Execute来实行这个设定好语句,大家从语句里面改。改成如下:

//只允许用户名和密码用0-9,a-z,A-Z,'@','_','.','-'这部分字符

$this->userName = preg_replace;

$this->userPwd = preg_replace;

$pwd = substr, 5, 20);

$dsql->SetQuery;

$dsql->Execute;

$row = $dsql->GetObject;

相关文章
推荐文章

热门标签

cms教程 织梦教程

模板天空-免费网站模板,企业建站教程,站长素材下载,源码下载

Copyright © 2002-2021 模板天空 (http://www.zengxiangjie.com) 网站地图 TAG标签 备案号:

声明: 本站文章均来自互联网,不代表本站观点 如有异议 请与本站联系 本站为非赢利性网站