国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > CMS > 織夢DEDE > 正文

織夢dedecms使用Mysql8.0無法登錄后臺的解決辦法

2024-07-12 08:50:50
字體:
來源:轉載
供稿:網友
這篇文章主要為大家詳細介紹了織夢dedecms使用Mysql8.0無法登錄后臺的解決辦法,具有一定的參考價值,感興趣的小伙伴們可以參考一下,有需要的朋友可以收藏方便以后借鑒。

今天一個客戶聯系我們的技術,反饋說安裝之后,但是登錄后臺,一直提示用戶名不存在。通常這個原因有兩個(1、數據庫鏈接信息不對  2、數據庫表中的用戶名不是默認的admin,被修改過)經過多發查證,這兩個原因都被排除了,最后發現原來這位客戶用的是mysql8.0的數據庫。

因mysql 8.0新制定的語句表名限制條件被dede自帶的后臺用戶登錄檢查語句指定表別名所違背而引起的bug。如何解決呢?

找到dedecms的文件目錄, 在include子目錄下找到userlogin.class.php, 249行左右看到如下語句:

//只允許用戶名和密碼用0-9,a-z,A-Z,'@','_','.','-'這些字符$this->userName = preg_replace("/[^0-9a-zA-Z_@!/.-]/", '', $username);$this->userPwd = preg_replace("/[^0-9a-zA-Z_@!/.-]/", '', $userpwd);$pwd = substr(md5($this->userPwd), 5, 20);$dsql->SetQuery("SELECT admin.*,atype.purviews FROM `dede_admin` admin LEFT JOIN `dede_admintype` atype ON atype.rank=admin.usertype WHERE admin.userid LIKE '".$this->userName."' LIMIT 0,1");$dsql->Execute();$row = $dsql->GetObject();

其中SetQuery就是設定將要執行的sql語句, 下一行Execute()來執行這個設定好語句,我們從語句里面改。改成如下:

//只允許用戶名和密碼用0-9,a-z,A-Z,'@','_','.','-'這些字符$this->userName = preg_replace("/[^0-9a-zA-Z_@!/.-]/", '', $username);$this->userPwd = preg_replace("/[^0-9a-zA-Z_@!/.-]/", '', $userpwd);$pwd = substr(md5($this->userPwd), 5, 20);$dsql->SetQuery("SELECT admi.*,atype.purviews FROM `dede_admin` admi LEFT JOIN `dede_admintype` atype ON atype.rank=admi.usertype WHERE admi.userid LIKE '".$this->userName."' LIMIT 0,1");$dsql->Execute();$row = $dsql->GetObject();

這樣一來,表的別名從admin刪去一個n被改成admi, 就可以正常登錄后臺了。

以上就是織夢dedecms使用Mysql8.0無法登錄后臺的解決辦法的全部內容,希望對大家的學習和解決疑問有所幫助,也希望大家多多支持武林網。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 九龙县| 来安县| 定结县| 斗六市| 伊川县| 三都| 如东县| 景泰县| 朝阳县| 富源县| 东乡族自治县| 仪陇县| 西和县| 西安市| 阿拉善右旗| 沂南县| 沈阳市| 珠海市| 山西省| 溆浦县| 徐水县| 明溪县| 潜山县| 南通市| 娱乐| 阿巴嘎旗| 八宿县| 山丹县| 灵山县| 广宁县| 云阳县| 和田市| 望奎县| 九寨沟县| 新丰县| 兴义市| 陕西省| 蒲江县| 寿宁县| 卢湾区| 新龙县|