讓訪客發表時必須填寫訪客名稱。
(請見http://phpbb-tw.net/phpbb/viewtopic.php?t=21151)
使用了m大哥的方法,訪客如果發表時沒有填寫名稱\r
在按「送出」的時候便會跳出警告視窗~
但是m大哥使用的方法中的:
我發現這如果在使用者已登入的狀況下if(!document.post.username.value){
formErrors = "請填您的訪客名稱";
}
因為這個document.post.username.value不存在(變成null)
因此使用者發文的時候網頁會產生一些小小的錯誤...
(應該完全不會影響發文的功能,純粹個人太龜毛...XD...)
於是我自己又想了一個辦法,
以下的方法除了限制訪客發文一定要填寫訪客名稱之外
還包括把訪客發表時的「會員名稱」欄位改成「訪客名稱」
給大家參考參考...
打開include/function_post.php
找到:
代碼: 選擇全部
if (!empty($username))
{
$username = trim(strip_tags($username));
if (!$userdata['session_logged_in'] || ($userdata['session_logged_in'] && $username != $userdata['username']))
{
include($phpbb_root_path . 'includes/functions_validate.'.$phpEx);
$result = validate_username($username);
if ($result['error'])
{
$error_msg .= (!empty($error_msg)) ? '<br />' . $result['error_msg'] : $result['error_msg'];
}
}
else
{
$username = '';
}
}
代碼: 選擇全部
else if ( empty($username) && !$userdata['session_logged_in'])
{
$error_msg .= (!empty($error_msg)) ? '<br />' . $lang['Empty_guestname'] : $lang['Empty_guestname'];
}
找到:
代碼: 選擇全部
<!-- BEGIN switch_username_select -->
<tr>
<td class="row1"><span class="gen"><b>{L_USERNAME}</b></span></td>
代碼: 選擇全部
{L_USERNAME}改成{L_GUESTNAME}
找到:
代碼: 選擇全部
'L_SUBJECT' => $lang['Subject'],
代碼: 選擇全部
'L_GUESTNAME' => $lang['Guestname'],
找到:
代碼: 選擇全部
$lang['Empty_username'] = '請填寫您的會員名稱';
代碼: 選擇全部
$lang['Empty_guestname'] = '請填寫您的訪客名稱';
$lang['Guestname'] = '訪客名稱';