POST TIME:2020-04-13 22:31
session_register,php5.4移除了這個函數,版本里說明,繼續使用該函數會產生錯誤。
if (!isset($_SESSION[$this->keepUserTypeTag]))改成這個方式就可以了
解決方法是:
找到文件夾中的userlogin.class.php文件中把所有帶有session_register的全部刪除即可。
@session_register下的所有語句屏蔽掉
function keepUser()
{
if($this->userID != ” && $this->userType != ”)
{
global $admincachefile,$adminstyle;
if(empty($adminstyle)) $adminstyle = ‘dedecms’;
代碼如下 | |
$_SESSION[$this->keepAdminStyleTag] = $adminstyle;
PutCookie(‘DedeUserID’, $this->userID, 3600 * 24, ‘/’); $this->ReWriteAdminChannel();
return 1; |
DedeCMS-V5.7后臺登陸成功之后為空白頁
經過反復排查得出了下面總結
其實問題比較簡單在降低了log級別之后 error_reporting(E_ALL);
可以看到在header之前有了輸出,為什么會這樣呢,在php include 和require的時候 如果文件編碼不一致會導致頁面會輸出一些空白,這就是問題所在,我用eclie把程序編碼都變成UTF8(之前是UTF8 + BOM)經過轉換之后我發現include/comm.inc.php 編碼還是UTF8 + BOM ,于是用editplus 強制轉成UTF8,問題解決。其實主要問題是出在include/comm.inc.php 文件編碼上 轉成UTF8即可。