[問題] 尋找一個外掛可以Check有沒有已使用的會員名稱‧
版主: 版主管理群
[問題] 尋找一個外掛可以Check有沒有已使用的會員名稱‧
問題外掛:N/A
參考連結:N/A
使用版本:phpBB 2.0.15
網站位置:因公司用途,所以不便公開‧敬請原諒‧\r
狀況描述:
小弟想找一個外掛係給新使用者註册時可以Check所輸入的使用者名稱有沒有被其他人已登記‧請各立大大幫幫小弟呢‧
參考連結:N/A
使用版本:phpBB 2.0.15
網站位置:因公司用途,所以不便公開‧敬請原諒‧\r
狀況描述:
小弟想找一個外掛係給新使用者註册時可以Check所輸入的使用者名稱有沒有被其他人已登記‧請各立大大幫幫小弟呢‧
Re: [問題] 尋找一個外掛可以Check有沒有已使用的會員名稱‧
建議您:vaio 寫:問題外掛:N/A
參考連結:N/A
使用版本:phpBB 2.0.15
網站位置:因公司用途,所以不便公開‧敬請原諒‧\r
狀況描述:
小弟想找一個外掛係給新使用者註册時可以Check所輸入的使用者名稱有沒有被其他人已登記‧請各立大大幫幫小弟呢‧
自行測試看看,...
系統預設, 已經擁有這個功能, 應該不必再新增外掛才對.
我是不知道有沒有像這樣現成的外掛,不過這要寫應該不會很困難\r
大概給你一點方向
首先自己製作1個php檔案,這個擋案的內容需要一個文字的表單跟一個送出按鈕
然後寫一個查詢句送去資料庫,然後回傳查到的資料列數量如果大於1
就表示有人使用過這個名稱,就echo一段文字說 這會員名稱已經存在啦\r
然後在註冊的頁面上塞一個JavaScript按鈕,來彈跳出一個大約300*200的小視窗式你製作的這個php檔案
我沒有學過Java ,不過網路上有很多範例我剛找一個
PHP大約是這樣寫的(範本)
大概給你一點方向
首先自己製作1個php檔案,這個擋案的內容需要一個文字的表單跟一個送出按鈕
然後寫一個查詢句送去資料庫,然後回傳查到的資料列數量如果大於1
就表示有人使用過這個名稱,就echo一段文字說 這會員名稱已經存在啦\r
然後在註冊的頁面上塞一個JavaScript按鈕,來彈跳出一個大約300*200的小視窗式你製作的這個php檔案
我沒有學過Java ,不過網路上有很多範例我剛找一個
代碼: 選擇全部
<SCRIPT LANGUAGE="JavaScript">
function Hi() {
window.open('欲連結網頁.htm','','width=300,height=220, scrollbars=yes,resizable=yes')
}
</SCRIPT>
<FORM>
<INPUT TYPE="BUTTON" VALUE="請按我" onClick="Hi()" >
</FORM>代碼: 選擇全部
<?php
define('IN_PHPBB', true);
$phpbb_root_path = './';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);
$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);
$gen_simple_header = TRUE;//這是不要出頁頭雜七雜八的東西
include($phpbb_root_path . 'includes/page_header.'.$phpEx);
//可以再這裡引入一個樣版檔或是直接將html寫在這
//主要是要寫一個表單\r
//再來如果這個檔案街收到變數 (判斷式)
//sql查詢句就由這裡寫起\r
include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
?>-.-
大致上是這樣吧,不知道有沒有寫錯耶......
在來就是看你要怎樣在註冊頁面加上超聯結或是直接用我說的java按鈕了
在來就是看你要怎樣在註冊頁面加上超聯結或是直接用我說的java按鈕了
代碼: 選擇全部
<?php
define('IN_PHPBB', true);
$phpbb_root_path = './';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);
$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);
$gen_simple_header = TRUE;
include($phpbb_root_path . 'includes/page_header.'.$phpEx);
?>
<form name="<?=$_SERVER['SCRIPT_NAME']?>" method="post" action="">
<input name="username" type="text" id="username" size="30">
<br />
<input type="submit" name="Submit" value="送出">
</form>
<?
if (isset($HTTP_POST_VARS['username']))
{
$username = $HTTP_POST_VARS['username'];
}
if ($username)
{
$sql ="SELECT u.username
FROM " . USERS_TABLE . " u
WHERE u.username ='$username'";
if (!($result = $db->sql_query($sql)))
{
message_die(GENERAL_ERROR, '無法送出查詢資料', '', __LINE__, __FILE__, $sql);
}
$sql_username = $db->sql_fetchrow($result);
if ($sql_username)
{
echo "您輸入的會員名稱".$username."已經存在";
}
else
{
echo "您輸入的會員名稱".$username."並不存在";
}
}
include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
?>-.-
To vaio:
援用 神川小羽 大大提供的語法, 我將它修改如下, 提供您參考:
援用 神川小羽 大大提供的語法, 我將它修改如下, 提供您參考:
代碼: 選擇全部
#
#-----[ Open ]-----
#
templates/YOUR_THEME/profile_add_body.tpl
#
#-----[ Find ]-----
#
<td class="row2"><input type="text" class="post" style="width:200px" name="username" size="25" maxlength="25" value="{USERNAME}" /></td>
#
#-----[ Replace With ]-----
#
<td class="row2"><input type="text" class="post" style="width:200px" name="username" size="25" maxlength="25" value="{USERNAME}" />
<input type="submit" name="check_username" value="查詢該帳號是否已經有人使用?" class="liteoption" /></td>
#
#-----[ Open ]-----
#
includes/usercp_register.php
#
#-----[ Find ]-----
#
if (
isset($HTTP_POST_VARS['submit']) ||
isset($HTTP_POST_VARS['avatargallery']) ||
isset($HTTP_POST_VARS['submitavatar']) ||
isset($HTTP_POST_VARS['cancelavatar']) ||
$mode == 'register' )
{
#
#-----[ Replace With ]-----
#
if (
isset($HTTP_POST_VARS['submit']) ||
isset($HTTP_POST_VARS['check_username']) ||
isset($HTTP_POST_VARS['avatargallery']) ||
isset($HTTP_POST_VARS['submitavatar']) ||
isset($HTTP_POST_VARS['cancelavatar']) ||
$mode == 'register' )
{
#
#-----[ Find ]-----
#
if ($mode == 'register' && ($userdata['session_logged_in'] || $username == $userdata['username']))
{
message_die(GENERAL_MESSAGE, $lang['Username_taken'], '', __LINE__, __FILE__);
}
#
#-----[ After Add ]-----
#
//
//+ Check username
//
if (isset($HTTP_POST_VARS['check_username']))
{
$username = $HTTP_POST_VARS['username'];
}
if ($username)
{
$sql ="SELECT u.username
FROM " . USERS_TABLE . " u
WHERE u.username ='$username'";
if (!($result = $db->sql_query($sql)))
{
message_die(GENERAL_ERROR, '無法送出查詢資料', '', __LINE__, __FILE__, $sql);
}
$sql_username = $db->sql_fetchrow($result);
if ($sql_username)
{
message_die(GENERAL_MESSAGE, $lang['Username_X'] );
}
else
{
message_die(GENERAL_MESSAGE, $lang['Username_O'] );
}
}
//
//- Check username
//
#
#-----[ Open ]-----
#
language/lang_chinese_traditional_taiwan/lang_main.php
#
#-----[ Find ]-----
#
$lang['Username_taken'] = '很抱歉!! 您所選擇的會員名稱已被註冊使用';
#
#-----[ After Add ]-----
#
$lang['Username_X'] = '很抱歉!! 您所選擇的會員名稱已被註冊使用<br><br><a href="javascript:history.go(-1)">回上一頁</a>';
$lang['Username_O'] = '恭喜您!! 您所選擇的會員名稱尚未有人使用<br><br><a href="javascript:history.go(-1)">回上一頁</a>';
\n
#
#-----[ Save / Close All Files ]-----
#
# EoM
理論上是可以的,vaio 寫:多謝兩位大大的幫手,但在按檢查帳號後的結果可否改用popup windows來顯示呢?
但是效益上不見得好!
以下是 倉木麻衣 兄對我的建言, 提供您參考:
Source: http://wang5555.dnsfor.me/phpbb2/viewtopic. ... 8399#28399有考慮修改它的popup方式嗎?
如同竹貓那邊某使用者說的
現在使用google(或yahoo?) toolbar、xp有裝sp2或是有裝阻擋popup程式的人是愈來愈多
所以當有新的pm或新的公告出來時~常會被擋下來



