[問題] 會員的個人資料欄位更改無效
版主: 版主管理群
版面規則
本區是討論關於 phpBB 2.0.X 架設安裝上的問題,只要有安裝任何外掛,請到外掛討論相關版面按照公告格式發表。
(發表文章請按照公告格式發表,違者砍文)
本區是討論關於 phpBB 2.0.X 架設安裝上的問題,只要有安裝任何外掛,請到外掛討論相關版面按照公告格式發表。
(發表文章請按照公告格式發表,違者砍文)
[問題] 會員的個人資料欄位更改無效
●架設主機作業系統:FreeBSD 5.4 Stable
●免費空間連結: http://www.wretch.cc
●上網方式:學術網
●安裝的程式:Apache 2.0 + php 4.3.9 + MySql 4.1
●您的 phpBB2 版本:phpBB 2.0.21
●您的 domain(網域名稱) :wretch.cc
●您的 phpBB2 連結網址: http://disney.wretch.cc/Discuss/
●錯誤狀態:
今天發現敝討論區會員無法更新「個人資料」,會員在 editprofile 頁更改個人資料的任何欄位後按下儲存,出現成功更改的訊息,但再詳查資料就可發現根本沒改。大家可以用此測試帳號試試: ID: new_test ; password: 1234
這問題今天網友通報後才發現,但應該已經存在一段時間,不知道是不是之前手動更新誤改到一些程式語法,我也不知道該如何找到出問題的語法。
請問板上朋友,這樣的情形會是哪個檔案出了問題?該如何查出來呢?先謝謝大家的幫忙!!
●免費空間連結: http://www.wretch.cc
●上網方式:學術網
●安裝的程式:Apache 2.0 + php 4.3.9 + MySql 4.1
●您的 phpBB2 版本:phpBB 2.0.21
●您的 domain(網域名稱) :wretch.cc
●您的 phpBB2 連結網址: http://disney.wretch.cc/Discuss/
●錯誤狀態:
今天發現敝討論區會員無法更新「個人資料」,會員在 editprofile 頁更改個人資料的任何欄位後按下儲存,出現成功更改的訊息,但再詳查資料就可發現根本沒改。大家可以用此測試帳號試試: ID: new_test ; password: 1234
這問題今天網友通報後才發現,但應該已經存在一段時間,不知道是不是之前手動更新誤改到一些程式語法,我也不知道該如何找到出問題的語法。
請問板上朋友,這樣的情形會是哪個檔案出了問題?該如何查出來呢?先謝謝大家的幫忙!!
我將 usercp_register.php 這檔案壓縮並放在這邊:心靈捕手 寫:建議您:
檢視 includes/usercp_register.php 的修改是否有誤?
或者, 將其壓縮後, 貼出下載連結.
http://disney.wretch.cc/temp/usercp_register.zip
還請幫忙!Thanks!
以下的修改, 提供您參考:WesleyHo 寫:我將 usercp_register.php 這檔案壓縮並放在這邊:心靈捕手 寫:建議您:
檢視 includes/usercp_register.php 的修改是否有誤?
或者, 將其壓縮後, 貼出下載連結.
http://disney.wretch.cc/temp/usercp_register.zip
還請幫忙!Thanks!
#
#-----[ FIND ]-----
#
代碼: 選擇全部
$sql = "UPDATE " . USERS_TABLE . "
SET " . $username_sql . $passwd_sql . "user_email = '" . str_replace("\'", "''", $email) ."', user_icq = '" . str_replace("\'", "''", $icq) . "', user_website = '" . str_replace("\'", "''", $website) . "', user_occ = '" . str_replace("\'", "''", $occupation) . "', user_from = '" . str_replace("\'", "''", $location) . "', user_interests = '" . str_replace("\'", "''", $interests) . "', user_sig = '" . str_replace("\'", "''", $signature) . "', user_sig_bbcode_uid = '$signature_bbcode_uid', user_viewemail = $viewemail, user_aim = '" . str_replace("\'", "''", str_replace(' ', '+', $aim)) . "', user_yim = '" . str_replace("\'", "''", $yim) . "', user_msnm = '" . str_replace("\'", "''", $msn) . "', user_attachsig = $attachsig, user_allowsmile = $allowsmilies, user_allowhtml = $allowhtml, user_allowbbcode = $allowbbcode, user_allow_viewonline = $allowviewonline, user_notify = $notifyreply, user_notify_pm = $notifypm, user_popup_pm = $popup_pm, user_timezone = $user_timezone, user_dateformat = '" . str_replace("\'", "''", $user_dateformat) . "', user_lang = '" . str_replace("\'", "''", $user_lang) . "', user_style = $user_style, user_active = $user_active, user_actkey = '" . str_replace("\'", "''", $user_actkey) . "'" . $avatar_sql . "
WHERE user_id = $user_id";
#-----[ AFTER, ADD ]-----
#
代碼: 選擇全部
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not update users table', '', __LINE__, __FILE__, $sql);
}
左晚在比對檔案的時候, 還有發現一個地方需要修改, 但是時間已晚;WesleyHo 寫:剛剛修改上傳,問題已經解決,真是謝謝啦!
今早再度拜訪您的論壇, 果然發現會員註冊頁面 '確認代碼' 無法顯示.
以下的修改, 提供您參考:
#
#-----[ FIND ]-----
#
代碼: 選擇全部
$code = strtoupper(str_replace('0', 'o', substr($code, 6)));
#-----[ REPLACE WITH ]-----
#
代碼: 選擇全部
$code = substr(str_replace('0', 'Z', strtoupper(base_convert($code, 16, 35))), 2, 6);
#-----[ FIND ]-----
#
代碼: 選擇全部
$confirm_image = (@extension_loaded('zlib')) ? '<img src="' . append_sid("profile.$phpEx?mode=confirm&id=$confirm_id") . '" alt="" title="" />' : '<img src="' . append_sid("profile.$phpEx?mode=confirm&id=$confirm_id&c=1") . '" alt="" title="" /><img src="' . append_sid("profile.$phpEx?mode=confirm&id=$confirm_id&c=2") . '" alt="" title="" /><img src="' . append_sid("profile.$phpEx?mode=confirm&id=$confirm_id&c=3") . '" alt="" title="" /><img src="' . append_sid("profile.$phpEx?mode=confirm&id=$confirm_id&c=4") . '" alt="" title="" /><img src="' . append_sid("profile.$phpEx?mode=confirm&id=$confirm_id&c=5") . '" alt="" title="" /><img src="' . append_sid("profile.$phpEx?mode=confirm&id=$confirm_id&c=6") . '" alt="" title="" />';
#-----[ REPLACE WITH ]-----
#
代碼: 選擇全部
$confirm_image = '<img src="' . append_sid("profile.$phpEx?mode=confirm&id=$confirm_id") . '" alt="" title="" />';
此檔 (usercp_register.php) 您並未有因新增外掛而修改,
因此可以以 phpBB 2.0.21 原始檔案覆蓋之.
因為嘗試太多次 '重新整理', 所以目前我進不去您的註冊頁面查看.WesleyHo 寫:也傳了,但還是不行顯現耶...心靈捕手 寫: 建議您:
再試試將此檔, 也以最新版的原始檔案覆蓋.
includes/usercp_confirm.php
代碼: 選擇全部
您嘗試註冊的次數已經超過系統上限,請稍後再試.
先做以下的修改, 暫時解除這個限制, 方便我查看.
#
#-----[ OPEN ]-----
#
includes/usercp_register.php
#
#-----[ FIND ]-----
#
代碼: 選擇全部
if ($row = $db->sql_fetchrow($result))
{
if ($row['attempts'] > 3)
{
message_die(GENERAL_MESSAGE, $lang['Too_many_registers']);
}
}
#-----[ REPLACE WITH ]-----
#
代碼: 選擇全部
/*if ($row = $db->sql_fetchrow($result))
{
if ($row['attempts'] > 3)
{
message_die(GENERAL_MESSAGE, $lang['Too_many_registers']);
}
}*/
#-----[ SAVE & CLOSE ]-----
#
我剛剛找到一個先前未更新版本的此檔,放到線上時這樣居然可以顯示註冊碼,但問題是似乎用此檔的話,會員「頭像控制面板」無法更改圖案,也不知道還有沒有其他問題,這先前的版本在這裡:
http://disney.wretch.cc/temp/usercp_register_2.zip
我也很納悶,難道我無法正常升級為 21 版嗎?
http://disney.wretch.cc/temp/usercp_register_2.zip
我也很納悶,難道我無法正常升級為 21 版嗎?
最後由 WesleyHo 於 2006-06-27 14:00 編輯,總共編輯了 2 次。



