1.12.7 i starsze - Dopuszczalna ilość znaków w nazwie użytkownika #2
xlesiu - 16-11-2009, 12:41 Temat postu: Dopuszczalna ilość znaków w nazwie użytkownika #2
Dopuszczalna ilość znaków w nazwie użytkownika
Z wyświetlaną ilością znaków jaka pozostała Cytat: | ##############################################################
## MOD Title: [2.0.19] Restrict Username Size
## MOD Author: Wo1f < N/A > (J. C. Woof) N/A
## MOD Description: Mod pozwala na ustaleniu dopuszczalnej ilości znaków w nazwie użytkownika. Z pokazywaniem ilości pozostałych znaków.
## MOD Version: 1.1.4
##
## Installation Level: Easy
## Installation Time: ~ 15 Minutes
## Files To Edit: admin/admin_board.php,
## admin/admin_users.php,
## admin/page_header_admin.php,
## includes/functions.php,
## includes/functions_post.php,
## includes/page_header.php,
## includes/usercp_register.php,
## language/lang_polish/lang_admin.php,
## language/lang_polish/lang_main.php,
## templates/NazwaStylu/groupcp_info_body.tpl,
## templates/NazwaStylu/index_body.tpl,
## templates/NazwaStylu/login_body.tpl,
## templates/NazwaStylu/posting_body.tpl,
## templates/NazwaStylu/profile_add_body.tpl,
## templates/NazwaStylu/profile_send_pass.tpl,
## templates/NazwaStylu/search_username.tpl,
## templates/NazwaStylu/admin/board_config_body.tpl,
## templates/NazwaStylu/admin/disallow_body,
## templates/NazwaStylu/admin/group_edit_body.tpl,
## templates/NazwaStylu/admin/user_edit_body.tpl,
## templates/NazwaStylu/admin/user_select_body.tpl.
## Included Files: N/A
## License: http://opensource.org/licenses/gpl-license.php GNU General Public License v2
##############################################################
|
Proszę o pomoc przy supporcie moda
Polaczek - 16-11-2009, 15:46
xlesiu napisał/a: | Z wyświetlaną ilością znaków jaka pozostała |
Rozumiem, że AJAX'owe?
Seba123 - 17-11-2009, 16:04
Zwykłe JS.
Brt - 19-03-2012, 20:46
U mnie po zainstalowaniu tej modyfikacji pojawił się problem ze sprawdzaniem loginu w bazie. Mogłem mieć dwóch użytkowników z takim samym loginem.
Chodzi o kod w pliku /includes/usercp_register.php
Wg. instrukcji poprawny kod powinien wyglądać następująco: Kod: | // Restrict username size mod - start
$un_min = $board_config['username_min_char'];
$un_max = $board_config['username_max_char'];
// Restrict username size mod - end
$username_sql = '';
if ( $board_config['allow_namechange'] || $mode == 'register' )
{
if ( empty($username) )
{
$error = TRUE;
$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['Fields_empty'];
}
else if ( $username != $userdata['username'] || $mode == 'register' )
{
// Restrict username size mod - start
if (strlen($username) < $un_min || strlen($username) > $un_max)
{
$error = TRUE;
$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . sprintf($lang['User_length_error'], $un_min, $un_max);
// Restrict username size mod - end
if (strtolower($username) != strtolower($userdata['username']) || $mode == 'register')
{
$result = validate_username($username);
if ( $result['error'] )
{
$error = TRUE;
$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $result['error_msg'];
}
}
// Restrict username size mod - start
}
// Restrict username size mod - end
if ( !$error )
{
$username_sql = "username = '" . str_replace("\'", "''", $username) . "', ";
}
}
} |
Ja swój edytowałem następująco: Kod: | // Restrict username size mod - start
$un_min = $board_config['username_min_char'];
$un_max = $board_config['username_max_char'];
// Restrict username size mod - end
$username_sql = '';
if ( $board_config['allow_namechange'] || $mode == 'register' )
{
if ( empty($username) )
{
$error = TRUE;
$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['Fields_empty'];
}
else if ( $username != $userdata['username'] || $mode == 'register' )
{
// Restrict username size mod - start
if (strlen($username) < $un_min || strlen($username) > $un_max)
{
$error = TRUE;
$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . sprintf($lang['User_length_error'], $un_min, $un_max);
// Restrict username size mod - end
if (strtolower($username) != strtolower($userdata['username']) || $mode == 'register')
{
$result = validate_username($username);
if ( $result['error'] )
{
$error = TRUE;
$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $result['error_msg'];
}
}
// Restrict username size mod - start
else if (strlen($username) < $un_min || strlen($username) > $un_max)
{
$error = TRUE;
$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . sprintf($lang['User_length_error'], $un_min, $un_max);
}
// Restrict username size mod - end
if ( !$error )
{
$username_sql = "username = '" . str_replace("\'", "''", $username) . "', ";
}
}
} |
O ile dobrze rozumiem, to chodzi o kolejność operacji, najpierw sprawdzenie czy login jest w bazie, a potem czy ma wymaganą ilość znaków.
Poprawcie mnie o ile się mylę.
|
|
|