1.将原来的登录代码
if ($user->login($username, $password,isset($_POST['remember'])))
{
update_user_info();
recalculate_price();
$ucdata = isset($user->ucdata)? $user->ucdata : '';
show_message($_LANG['login_success'] . $ucdata , array($_LANG['back_up_page'], $_LANG['profile_lnk']), array($back_act,'user.php?act=profile'), 'info');
}
else
{
$_SESSION['login_fail'] ++ ;
show_message($_LANG['login_failure'], $_LANG['relogin_lnk'], 'user.php', 'error');
}
替换成下面的代码
if(is_email($username))
{
$sql = 'SELECT user_name FROM'.$ecs->table('users').
"WHERE email = '$username' LIMIT 1";
$username = $db->getOne($sql);
if ($user->login($username, $password,isset($_POST['remember'])))
{
update_user_info();
recalculate_price();
$ucdata = isset($user->ucdata)? $user->ucdata : '';
show_message($_LANG['login_success'] . $ucdata , array($_LANG['back_up_page'], $_LANG['profile_lnk']), array($back_act,'user.php'), 'info');
}
else
{
$_SESSION['login_fail'] ++ ;
show_message($_LANG['login_failure'], $_LANG['relogin_lnk'], 'user.php', 'error');
}
}
else if(is_mobile($username))
{
$sql = 'SELECT user_name FROM'.$ecs->table('users').
"WHERE mobile_phone = '$username' LIMIT 1";
$username = $db->getOne($sql);
if ($user->login($username, $password,isset($_POST['remember'])))
{
update_user_info();