Здравствуйте! извиняюсь если не в том форуме создал тему!
ребята как сделать галочку 'запомнить меня' при авторизации
у меня вот такой код, куда что добавить подскажите.
кто сможет помочь написать этот модуль ? не за спасибо конечно!
движок используется phpvibe
CODE ( htmlphp):
скопировать код в буфер обмена
public static function LoginUser($id) { global $db; if($id && ($id > 0)) { user::LastLogin($id); $result = $db->get_row ("SELECT * FROM ".DB_PREFIX."users WHERE id ='" . sanitize_int($id) . "'"); $new_pass = user::generateRandomNumber(); user::ChangePass($id, $new_pass); user::setSessionData('bd_user',$result,$new_pass); } } public static function setSessionData($key, $val, $np =null) { global $db; if (!is_array($val)) { $val = user::obj_to_array($val); } if (function_exists('session_regenerate_id')) { @session_regenerate_id(true); } $_SESSION['logintype'] = toDb($val["type"]); $_SESSION['name'] = toDb($val["name"]); if(!is_null($np)) { $_SESSION['pass'] = $np; } else { $_SESSION['pass'] = toDb($val["pass"]); } $_SESSION['token'] = md5(uniqid(rand(), TRUE)); $_SESSION['HTTP_USER_AGENT'] = md5($_SERVER['HTTP_USER_AGENT']); setcookie(COOKIEKEY, user::encrypt($_SESSION['user_id'].COOKIESPLIT.$_SESSION['pass'].COOKIESPLIT.get_ip(), SECRETSALT), time() + 60 * 60 * 24 * 5,'/', cookiedomain()); } public static function clearSessionData() { $_SESSION = array(); session_destroy(); setcookie(COOKIEKEY, '', -3600,'/', cookiedomain()); if (nullval($_SESSION)) { session_start(); } }
|