本文整理汇总了PHP中users::hashPasswd方法的典型用法代码示例。如果您正苦于以下问题:PHP users::hashPasswd方法的具体用法?PHP users::hashPasswd怎么用?PHP users::hashPasswd使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类users
的用法示例。
在下文中一共展示了users::hashPasswd方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: isValid
/**
* Проверка авторизации и установка ошибки или URL для перехода
*
* @param type $data
* @return boolean
*/
public function isValid($data)
{
if ($valid = parent::isValid($data)) {
$data = $this->getValues();
$autologin = isset($data['autologin']) && $data['autologin'] == 1;
$pwd = users::hashPasswd($data['passwd']);
$uid = login($data['login'], $pwd, $autologin);
switch ($uid) {
case self::UID_FAIL:
$valid = false;
$this->getElement('login')->addError(self::FAIL_LOGIN_MSG);
break;
case self::UID_BANNED:
$_SESSION['rand'] = csrf_token();
$this->redirect_to = sprintf(self::REDIRECT_URL_BANNED, $data['login'], $_SESSION['rand']);
break;
case self::UID_INNACTIVE:
$this->redirect_to = self::REDIRECT_URL_INACTIVE;
break;
case self::UID_DENYIP:
$this->redirect_to = sprintf(self::REDIRECT_URL_DENYIP, $data['login']);
break;
case users::AUTH_STATUS_2FA:
$this->redirect_to = self::REDIRECT_URL_2FA;
break;
default:
//Успешная авторизация
if ($uid > 0) {
$default_location = is_emp() ? '/tu/' : '/projects/';
$ref_uri = isset($_SESSION['ref_uri']) ? urldecode($_SESSION['ref_uri']) : null;
$ref_uri = !$ref_uri ? $default_location : $ref_uri;
$location = HTTP_PFX . $_SERVER['HTTP_HOST'] . $ref_uri;
// #0012501
$location = preg_replace("/\\/router\\.php\\?pg=/", "", $location);
// #0011589
if (strpos($location, '/remind/') || strpos($location, 'inactive.php') || strpos($location, 'checkpass.php') || strpos($location, '/registration/') || strpos($location, 'fbd.php')) {
$location = $default_location;
}
session_write_close();
//Отправляем в очередь событие об успешной авторизации
require_once ABS_PATH . '/classes/statistic/StatisticFactory.php';
require_once ABS_PATH . '/classes/users.php';
$ga = StatisticFactory::getInstance('GA');
$ga->queue('event', array('uid' => $uid, 'cid' => users::getCid(), 'category' => is_emp() ? 'customer' : 'freelancer', 'action' => 'authorization_passed', 'label' => 'email'));
$this->redirect_to = $location;
}
}
}
return $valid;
}
示例2: elseif
} elseif (strlen($pwd) < 6) {
$error = 'Слишком короткий пароль (минимум — 6 символов)';
} elseif (strlen($pwd) > 24) {
$error = 'Слишком длинный пароль (максимум — 24 символа)';
}
if (!$error && $codes->user_id) {
require_once ABS_PATH . '/classes/users.php';
$user = new users();
$user->passwd = $pwd;
$err = $user->Update($codes->user_id, $res);
$u_id = $codes->user_id;
$codes->DelByUT($codes->user_id, 1);
if (!$err) {
$info = 'Изменения внесены';
require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/smail.php';
$smail = new smail();
$smail->ChangePwd($codes->user_id, $pwd);
// Пишем в лог смены паролей
require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/restorepass_log.php';
restorepass_log::SaveToLog($codes->user_id, getRemoteIP(), 1);
$pwd = users::hashPasswd(trim(stripslashes($pwd)));
$user->getUserByUID($u_id);
login($user->login, $pwd);
session_write_close();
header('Location: /');
exit;
}
}
}
$content = 'changepwd_inner.php';
include 'template3.php';
示例3: authorization
/**
* авторизация в мастере
*/
public function authorization(&$login)
{
$alert = array();
$login = __paramInit('string', null, 'auth_login');
$user = new users();
$role = $user->GetRole($login, $error);
if ($error || !$role) {
$alert['login'] = 'Пользователя с таким логином не существует';
return $alert;
}
// проверяем совпадают ли роли в мастере и у пользователя
$role = $role == '000000' ? 2 : 1;
// 2 - фрилансер, 1 - работодатель - роль зарегистрированного пользователя
$wr = new wizard_registration();
$masterRole = (int) $wr->getRole();
// роль в мастере
if ($role !== $masterRole) {
if ($masterRole === 1) {
$alert['login'] = 'На этом этапе войти можно только работодателем';
} else {
$alert['login'] = 'На этом этапе войти можно только фрилансером';
}
return $alert;
}
// хэш пароля
$passwd = users::hashPasswd(trim($_POST['auth_password']));
$id = login($login, $passwd, 0, true);
if (!$id) {
$alert['password'] = 'Неверный пароль';
return $alert;
}
// запоминаем в куках что авторизовались
setcookie('master_auth', true, time() + 1800, '/');
$this->parent->saveActionWizard($this, step_wizard::STATUS_COMPLITED);
$this->parent->bindUserIDReg($id);
$this->parent->setNextStep($this->parent->getPosition() + 1);
header("Location: /wizard/registration/");
exit;
}
示例4: __paramInit
}
$autologin = __paramInit('bool', NULL, 'autologin');
$is_ajax = $_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest';
if ($action == 'switch') {
if (!($uid = get_uid()) || !$_SESSION['anti_uid']) {
break;
}
$s_login = $_SESSION['anti_login'];
$location = str_replace("/users/{$_SESSION['login']}/setup/", "/users/{$s_login}/setup/", $location);
$user_class = is_emp() ? 'freelancer' : 'employer';
$user = new $user_class();
$pwd = $user->GetField($_SESSION['anti_uid'], $error, "passwd");
logout();
} else {
$s_login = strip_tags(trim($_POST['login']));
$pwd = users::hashPasswd(trim(stripslashes($_POST['passwd'])));
}
//Если пусто то даже непробуем авторизоваться
$is_log = 0;
if (!empty($s_login) && !empty($pwd)) {
$is_log = login($s_login, $pwd, $autologin);
}
unset($pwd);
if ($_redirect) {
$_SESSION['ref_uri'] = trim($_redirect);
}
$default_location = is_emp() ? '/' : '/projects/';
if (!$ref_uri || $ref_uri == '/') {
$ref_uri = $default_location;
}
$location = HTTP_PFX . $_SERVER['HTTP_HOST'] . $ref_uri . $anchor;
示例5: autoRegistationAndLogin
public function autoRegistationAndLogin($data = array())
{
$uid = $data['uid'] ? intval($data['uid']) : 0;
$role = $data['role'];
if ($uid > 0) {
$class_name = $role == 0 ? 'freelancer' : 'employer';
$user = new $class_name();
$user->GetUserByUID($uid);
} else {
unset($data['uid']);
$user = $this->autoRegistation($data);
}
if (!$user || !$user->uid) {
return FALSE;
}
$pwd = $uid > 0 ? @current(users::GetUserSoltCookie($user->uid)) : users::hashPasswd(trim(stripslashes($user->passwd)));
$ret = login($user->login, $pwd, 1, $uid > 0);
return array('ret' => $ret, 'user' => $user);
}
示例6: exit
echo json_encode($res);
exit(0);
}
if ($email) {
$user = new users();
$user = $user->getUserBySocialEmail($email);
if (empty($user['login'])) {
$action = '';
} else {
$login = $user['login'];
}
}
if ($login) {
$user = new users();
if ($action == 'info') {
$user->GetUserByLoginPasswd($login, $user->hashPasswd($pass));
} else {
$user->GetUser($login);
}
if (empty($user->login)) {
$action = '';
}
}
switch ($action) {
case 'role':
$result = array('result' => 'ok', 'role' => is_emp($user->role) ? 1 : 2);
break;
case 'info':
$sbr = sbr_meta::getUserReqvs($user->uid);
$result = array('result' => 'ok', 'user' => array('login' => $user->login, 'email' => $user->email, 'phone' => $sbr[$sbr['form_type']]['mob_phone'] != '' ? $sbr[$sbr['form_type']]['mob_phone'] : '', 'firstname' => $user->uname ? iconv('CP1251', 'UTF-8', $user->uname) : '', 'lastname' => $user->usurname ? iconv('CP1251', 'UTF-8', $user->usurname) : '', 'role' => is_emp($user->role) ? 1 : 2, 'avatar' => $user->photo != '' ? WDCPREFIX . '/users/' . $user->login . '/foto/' . $user->photo : ''));
break;
示例7: OpauthModel
$opauthModel = new OpauthModel();
$status = __paramInit('string', null, 'status');
if ($status == 'off') {
$opauthModel->removeMultilevel($uid);
header_location_exit("/users/{$_SESSION['login']}/setup/safety/");
} else {
$provider_type = __paramInit('string', null, 'type');
$password = __paramInit('string', null, 'oldpwd');
$error_flag = 0;
if (!$provider_type) {
$error_flag = 1;
$alert[4] = "Вы не указали соцсеть";
}
$user = new users();
// Проверям правильность пароля
if (users::hashPasswd($password) != $user->GetField($uid, $ee, 'passwd')) {
$error_flag = 1;
$alert[5] = "Вы ввели неправильный пароль";
}
if (!$error_flag) {
$info_msg = "Изменения внесены";
$_SESSION['info_msg'] = $info_msg;
$opauthModel->addMultilevel($uid, $provider_type);
header_location_exit('/users/' . $_SESSION['login'] . '/setup/safety/');
} else {
$_SESSION['alert'] = $alert;
}
}
break;
case "tabs_change":
$portf = trim($_POST['portf']);
示例8: getName
<?php
require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/stdf.php";
require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/freelancer.php";
function getName($is_array = false)
{
$first = array('Абрам', 'Аваз', 'Аввакум', 'Август', 'Августин', 'Авдей', 'Авенир', 'Аверьян', 'Авксентий', 'Автандил', 'Агап', 'Агафон', 'Агей', 'Адам', 'Адильхан', 'Адис', 'Адольф', 'Адриан', 'Азад', 'Азамат', 'Азар', 'Азарий', 'Азиз', 'Акакий', 'Аким', 'Алан', 'Александр', 'Алексей', 'Али', 'Алим', 'Алискер', 'Алихан', 'Алоис', 'Алферий', 'Альберт', 'Альбин', 'Альфред', 'Алянур', 'Амадей', 'Амадеус', 'Амаяк', 'Амвросий', 'Анастас', 'Анатолий', 'Анвар', 'Ангел', 'Андоим', 'Андрей', 'Андрон', 'Андроп', 'Анжей', 'Аникита', 'Анисим', 'Антип', 'Антон', 'Ануфрий', 'Анфим', 'Аполлон', 'Арам', 'Ардалион', 'Арий', 'Аристарх', 'Аристон', 'Аркадий', 'Арно', 'Арнольд', 'Арон', 'Арсен', 'Арслан', 'Арулан', 'Арье', 'Артамон', 'Артем', 'Артемий', 'Артур', 'Архип', 'Аршак', 'Аршиддин', 'Аскар', 'Аскольд', 'Атанас', 'Афанасий', 'Афиноген', 'Африкан', 'Ахмет', 'Ашот', 'Бадри', 'Базан', 'Байракдар', 'Бари', 'Барузда', 'Батыр');
$second = array('Иванов', 'Петров', 'Сидоров', 'Воська', 'Семаченкуй', 'Барыжников', 'Сурок', 'Белый', 'Федософ-Ледовских', 'Онянов-Зенина', 'Казаков');
return $is_array ? array($first[array_rand($first)], $second[array_rand($second)]) : $first[array_rand($first)] . ' ' . $second[array_rand($second)];
}
$nums = 50000;
$role = 0;
$last_id = $DB->val("SELECT uid FROM users ORDER BY uid DESC LIMIT 1");
$city_ids = $DB->col("SELECT id FROM city WHERE country_id = 1");
$user = new users();
$rolesize = $GLOBALS['rolesize'];
for ($i = 0; $i < $nums; $i++) {
$last_id++;
$fullname = explode(' ', getName());
$ip = rand(1, 255) . '.' . rand(1, 255) . '.' . rand(1, 255) . '.' . rand(1, 255);
$prefix = $role == 0 ? 'freelancer' : 'employer';
$login = $prefix . $last_id;
if ($DB->val('SELECT uid FROM users WHERE login = ?', $login)) {
continue;
}
$sql = $DB->parse("INSERT INTO users\n (login, uname, usurname, passwd, email, role, reg_date, reg_ip, last_time, last_ip, sex, active, self_deleted, country, city, icq, skype, is_pro, jabber, phone, ljuser, site, is_verify) \n VALUES \n (?, ?, ?, ?, lower(?), B'{$role}'::bit({$rolesize}),current_date, ?, now(), ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);\n\n SELECT currval('users_uid_seq');", $login, $fullname[0], $fullname[1], $user->hashPasswd('123456'), $login . '@test.lo', $ip, $ip, (bool) rand(0, 1), TRUE, FALSE, 1, $city_ids[array_rand($city_ids)], '123456789', $login, (bool) rand(0, 1), '123456789', "911-911-911", $login, 'http://google.com', (bool) rand(0, 1));
$last_id = $DB->val($sql);
}
echo $last_id;
示例9: FixPassword
/**
* Меняет хеш пароля, в котором по версии пользователя должны были быть теги,
* но они были обрезаны функцией strip_tags при регистрации.
* http://beta.free-lance.ru/mantis/view.php?id=9807
*
* Временная мера.
* После глобальноый ) смены паролей этот метод потеряет актуальность.
*
* @global DB $DB
* @param <type> $login
* @return <type>
*/
function FixPassword($sql, $login)
{
global $DB;
$pwd = trim($_POST['passwd']);
$pwd2 = strip_tags($pwd);
if ($_POST['action'] != 'login' || !$pwd || $pwd == $pwd2) {
return NULL;
}
if ($res = $DB->row($sql, strtolower($login), users::hashPasswd(stripslashes($pwd2)))) {
$DB->update('users', array('passwd' => users::hashPasswd(stripslashes($pwd))), 'uid = ?i', $res['uid']);
}
return $res;
}
示例10: x____checkAuth
/**
* Проверяет соотвествие пары логин/пароль.
*
* @param string $login логин пользователя.
* @param string $passwd пароль пользователя в md5.
* @return int 0:все ок; N:код ошибки.
*/
protected final function x____checkAuth($args)
{
list($login, $passwd) = $args;
if (!isset($passwd) || !isset($login)) {
$this->error(EXTERNAL_ERR_INVALID_METHOD_ARG, 'Use checkAuth(string login, string passwd)');
}
require_once ABS_PATH . '/classes/users.php';
$user = new users();
$user->GetUserByLoginPasswd($login, users::hashPasswd($this->_decriptPasswd($passwd), 1));
return $this->_authDenied($user);
}
示例11: x____users_signin
/**
* Авторизация
*
* @param array $aParams массив входящих данных
* @return array $aResult ответ
*/
protected function x____users_signin($aParams = array())
{
global $DB;
$this->_validDevice($aParams);
$aResult = array();
require_once ABS_PATH . '/classes/users.php';
$sLogin = strip_tags(trim($aParams['username']));
$sPasswd = users::hashPasswd(trim(stripslashes($aParams['password'])), 1);
if (empty($sLogin)) {
$this->error(EXTERNAL_ERR_EMPTY_USERNAME);
} elseif (empty($sPasswd)) {
$this->error(EXTERNAL_ERR_EMPTY_PASSWORD);
} else {
$nResult = login($sLogin, $sPasswd, 0, false);
switch ($nResult) {
case 0:
$this->error(EXTERNAL_ERR_WRONG_AUTH);
break;
case -1:
$this->error(EXTERNAL_ERR_USER_BANNED);
break;
case -2:
$this->error(EXTERNAL_ERR_USER_NOTACTIVE);
break;
case -3:
$this->error(EXTERNAL_ERR_USER_DENYIP);
break;
default:
$sClassName = is_emp($_SESSION['role']) ? 'employer' : 'freelancer';
require_once ABS_PATH . '/classes/' . $sClassName . '.php';
$aData = array();
$aClassVars = array_keys(get_class_vars($sClassName));
$oUser = new $sClassName();
$oUser->GetUserByUID($nResult);
users::regVisit();
foreach ($aClassVars as $sVar) {
$aData[$sVar] = $oUser->{$sVar};
}
$aResult = $this->_getUserData($aData, true);
session_write_close();
if ($this->_sPlatform == 'ios' || $this->_sPlatform == 'android') {
if ($this->_sPlatform == 'ios') {
$sql = "UPDATE external_m_devices SET user_id = ?i WHERE device_id = ?";
$DB->query($sql, $aData['uid'], $this->_sUdid);
}
$sql = "SELECT id FROM external_m_push_settings WHERE device_id = ? AND device_type = ? AND user_id = ?i";
$settings_id = $DB->val($sql, $this->_sUdid, $this->_sPlatform, $aData['uid']);
if (!$settings_id) {
$sql = "INSERT INTO external_m_push_settings (\n device_id, \n device_type, \n user_id, \n message_new, \n project_response_new, \n project_select_candidate, \n project_select_performer, \n project_select_reject\n ) VALUES (\n ?,\n ?,\n ?i,\n 't',\n 't',\n 't',\n 't',\n 't'\n )";
$DB->query($sql, $this->_sUdid, $this->_sPlatform, $aData['uid']);
}
}
break;
}
}
return $aResult;
}