/* *######################################### * PHPCMS File Manager * Copyright (c) 2004-2006 phpcms.cn * Author: Longbill ( http://www.longbill.cn ) * longbill.cn@gmail.com *######################################### */ @error_reporting(1); include_once "common.php"; $uc = check_login(); header("Content-type:TEXT/HTML;Charset=GB2312"); if ($uc) { uncookie('user_name'); uncookie('user_pass'); exitjs("您已经退出!", "index.php"); } else { if ($_POST["action"] != "login") { echo deal_temp("temp/{$tempname}/login.htm", array("title" => $title)); die; } $user_orig = $_POST["user_name"]; $pass_orig = $_POST["user_pass"]; $user_name = my_encode($user_orig); $user_pass = my_encode($pass_orig); $users = file("class/users.php"); for ($i = 1; $i < count($users); $i++) { if (!trim($users[$i])) { continue; }
/** * Выход пользователя из системы * * @param boolean $save_cookie Удалять сохраненные кукисы или нет */ function logout($save_cookie = FALSE) { if (!$save_cookie) { $sql = "UPDATE users SET solt=NULL WHERE login='******'login'] . "'"; pg_query(DBConnect(), $sql); if (is_emp()) { require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/projects.php"; tmp_project::clearTmpAll($_SESSION['login']); } } $GLOBALS['session']->logout($_SESSION['login']); if ($_SESSION['uid']) { require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/activate_code.php"; $user = new users(); $active = $user->GetField($_SESSION['uid'], $err, 'active'); $activate_code = activate_code::getActivateCodeByUid($_SESSION['uid']); if ($activate_code != '' && ($active == true || $active == 't')) { $user->active = false; } $user->last_time = 'now'; $user->Update($_SESSION['uid'], $res); } //Переносим хеши ссылок на уже зафиксированные местки для юзера при выходе/входе $_ga_stat_url_hash = isset($_SESSION['ga_stat_url_hash']) ? $_SESSION['ga_stat_url_hash'] : null; session_unset(); //Воссанавливаем значение хешей ссылок if ($_ga_stat_url_hash) { $_SESSION['ga_stat_url_hash'] = $_ga_stat_url_hash; } if (!$save_cookie) { uncookie(); } }
/** * Выход * * @param array $aParams массив входящих данных * @return array $aResult ответ */ protected function x____users_signout($aParams = array()) { global $DB; $this->_validDevice($aParams); $aResult = array(); if (get_uid(false)) { $sql = "DELETE FROM external_m_devices WHERE device_id=? AND user_id=?"; $DB->query($sql, $this->_sUdid, get_uid(false)); uncookie(); session_unset(); session_destroy(); session_write_close(); } else { $this->error(EXTERNAL_ERR_USER_NO_AUTH); } return $aResult; }