織夢會員系統bug

織夢會員頁面反覆提示502,是因爲在index.php頁面上的//更新最近訪客記錄及站點統計記錄 數組循環中,並未使用子匹配文本,大概在148行,修改


$last_vid .= ','.$last_vid;

這裏在後面加載大量數據到緩存,導致本地測試影響不大,服務器上影響不大或者502打不開頁面

foreach($last_vids as $lsid)
                {
                    if($i>10)
                    {
                        break;
                    }
                    else if($lsid != $uid)
                    {
                        $i++;
                        $last_vid .= ','.$last_vid;
                    }
                }

另外一個bug,是搜狗瀏覽器的(僅僅注意到這個)對頁面的uid識別能力不強,導致打開的會員界面出現非法揮着會員空間被關閉的情況

附加一個自動識別編碼的函數:

/**
* @ string 需要轉換的文字
* @ encoding 目標編碼
**/
functiondetect_encoding($string,$encoding= 'gbk'){
$is_utf8=  preg_match('%^(?:[\x09\x0A\x0D\x20-\x7E]| [\xC2-\xDF][\x80-\xBF]|  \xE0[\xA0-\xBF][\x80-\xBF] | [\xE1-\xEC\xEE\xEF][\x80-\xBF]{2}    |  \xED[\x80-\x9F][\x80-\xBF] |  \xF0[\x90-\xBF][\x80-\xBF]{2}  | [\xF1-\xF3][\x80-\xBF]{3}  |  \xF4[\x80-\x8F][\x80-\xBF]{2} )*$%xs', $string);
if($is_utf8&& $encoding== 'utf8'){
return$string;
}elseif($is_utf8){
returnmb_convert_encoding($string, $encoding, "UTF-8");
}else{
returnmb_convert_encoding($string, $encoding, 'gbk,gb2312,big5');
}
}

發佈了40 篇原創文章 · 獲贊 9 · 訪問量 12萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章