1 頁 (共 1 頁)

[問題]防止大量註冊mod功能失效(已解決)

發表於 : 2005-10-28 08:04
NAT
問題外掛: Anti Robotic Register Flood 1.1.4
參考連結: http://smartor.is-root.com/viewtopic.php?t=2130
使用版本: phpBB 2.0.17
網站位置: http://nc.rockpie.com
狀況描述:





最近持續從2.0.6手動更新到2.0.17,都很正常,但是Virtual Confirmation跟Anti Robotic Register 1.1.4 這兩個外掛就失效了。

查了資料才知道原來Virtual Confirmation是phpbb本身內建的,我的Anti Robotic 是在phpbb2.0.6版的時後裝上去的。

在注冊會員的頁面上可以正常出現文字圖跟輸入框, 但是不管我有沒有輸入或是隨便輸入文字都可以註冊成功 , 就算我在後台把 Virtual Confirmation 打開也是一樣不輸入都可以註冊成功 ,這樣的話這兩個mod就失效了>_<

我也檢查過資料表

代碼: 選擇全部

INSERT INTO `phpbb_config` VALUES ('enable_confirm', '0');
跟Anti Robotic的欄位都存在著。

我使用的風格是預設的重來沒更改過

請各位大大支援一下會是什麼問題?

============================================
10/29 我試著將Anti Robotic Register 拆掉,然後再開啟Virtual Confirmation 結果還是一樣, 不輸入識別碼或是亂輸入都可注冊完成。
搜尋過好多文章,也到美版phpbb去搜尋,還是查不出原因,請大大幫幫我吧 :-?

發表於 : 2005-10-29 17:36
心靈捕手
To NAT:

建議您:
將目前的 includes/usercp_register.php 貼出.
(ps. 將它另存成文字檔後, 再貼出下載路徑即可)

發表於 : 2005-10-29 22:27
NAT
心靈捕手 寫:To NAT:

建議您:
將目前的 includes/usercp_register.php 貼出.
(ps. 將它另存成文字檔後, 再貼出下載路徑即可)

請大大幫我檢查看看 3Q~~~
http://rapidshare.de/files/6918349/user ... r.rar.html

發表於 : 2005-10-29 23:33
心靈捕手
NAT 寫:
心靈捕手 寫:To NAT:

建議您:
將目前的 includes/usercp_register.php 貼出.
(ps. 將它另存成文字檔後, 再貼出下載路徑即可)

請大大幫我檢查看看 3Q~~~
http://rapidshare.de/files/6918349/user ... r.rar.html
發現一個邏輯上的錯誤!

以下的修改, 提供您參考:
#
#-----[ FIND ]-----
#

代碼: 選擇全部

	if ( $mode == 'editprofile' )
	{
		if ( $user_id != $userdata['user_id'] )
		{
			$error = TRUE;
			$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['Wrong_Profile'];
		}

	else if ( $mode == 'register' )
	{
		if ( empty($username) || empty($new_password) || empty($password_confirm) || empty($email) )
		{
			$error = TRUE;
			$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['Fields_empty'];
		}
	}
#
#-----[ REPLACE WITH ]-----
#

代碼: 選擇全部

	if ( $mode == 'editprofile' )
	{
		if ( $user_id != $userdata['user_id'] )
		{
			$error = TRUE;
			$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['Wrong_Profile'];
		}
	}
	else if ( $mode == 'register' )
	{
		if ( empty($username) || empty($new_password) || empty($password_confirm) || empty($email) )
		{
			$error = TRUE;
			$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['Fields_empty'];
		}
	}
#
#-----[ FIND ]-----
#

代碼: 選擇全部

			else
			{		
				$error = TRUE;
				$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['Confirm_code_wrong'];
			}
			$db->sql_freeresult($result);
		}
	}	
		
	}
#
#-----[ REPLACE WITH ]-----
#

代碼: 選擇全部

			else
			{		
				$error = TRUE;
				$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['Confirm_code_wrong'];
			}
			$db->sql_freeresult($result);
		}
	}	
		
	//}

發表於 : 2005-10-30 02:43
NAT
感謝大大的幫忙
問題已經解決了,果然是你說的這兩個錯誤,修正後已正常運作
Thank you :-D