筍子工作雜記

十一月 28, 2006

userinfo.php 空白頁面懶人解決方法

Filed under: xoops — shinnlu @ 2:44 下午

這一陣子忙的昏天暗地,部落格上也雜草叢生了,以後如果真的很忙,可能會出現只有短短幾個字的文章,反正是工作雜記嘛…
modules/profile/userinfo.php
這一隻程式有時候會出現空白頁面,之前因為有時正常,有時不正常,所以沒有直接懷疑到程式碼身上,但最近出現的頻率太過頻繁,狠下心來做全面的 Debug.
把userinfo.php加入Debug Code 後,開始執行便發覺程式卡在呼叫 XoopsModule 的 search 成員
$results =& $modules[$mid]->search(“, “, 5, 0, $thisUser->getVar(‘uid’));而要追蹤這一隻程式,要直接去 /kernel/module.php 找 search 這一個函式,同樣的插入 Debug Code 後,執行便發覺程式又卡在
if (file_exists(XOOPS_ROOT_PATH."/modules/".$this->getVar(‘dirname’).’/’.$search['file'])) {
include_once XOOPS_ROOT_PATH.’/modules/’.$this->getVar(‘dirname’).’/’.$search['file'];
} else {
return false;
}

追到後面,原來是userinfo.php 他會去搜尋目前使用者,在各個模組最新發表的文章,結果因為有一個模組的的搜尋功能沒有定義好(通常是因為同樣的模組裝了兩個,但是搜尋的功能沒有設定好,比如 iContent、iContent1 兩個同樣的模組),造成他去include 搜尋程式時,整個流程中斷,變成空白頁面,解決方法很簡單,就是把這一個功能關掉( 搜尋目前使用者,在各個模組最新發表文章的功能)
我也在xoops 網站找到相關的討論,網址如下:
[ #4157 ] Pageworks search failing (breaks userinfo.php)
所謂的懶人解決方法,就是直接把這個功能關掉,如果要讓這一個功能正常運作,需要重新定義重複安裝的模組裡的 search function.

無迴響 »

仍無迴響。

此篇文章迴響的訂閱源料 TrackBack URL

發表迴響

Powered by WordPress