本文整理汇总了PHP中users::CheckSafetyPhone方法的典型用法代码示例。如果您正苦于以下问题:PHP users::CheckSafetyPhone方法的具体用法?PHP users::CheckSafetyPhone怎么用?PHP users::CheckSafetyPhone使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类users
的用法示例。
在下文中一共展示了users::CheckSafetyPhone方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: SafetyPhoneNow
/**
* Привязать телефон к аккаунту.
*/
function SafetyPhoneNow()
{
session_start();
return;
// #0019588
$aRes = array('success' => false);
if (trim($_POST['phone']) == '') {
$aRes['error'] = iconv('CP1251', 'UTF-8', 'Вы должны ввести номер телефона');
} else {
$users = new users();
$sPhone = change_q(stripslashes($_POST['phone']), true);
$aPhone = $users->CheckSafetyPhone($sPhone);
if ($aPhone['error_flag'] == 1) {
$aRes['error'] = iconv('CP1251', 'UTF-8', $aPhone['alert'][2]);
} elseif (isset($_SESSION['uid'])) {
$sPhoneOnly = $_POST['phone_only'] == 't' ? 't' : 'f';
if ($users->updateSafetyPhone($_SESSION['uid'], $sPhone, $sPhoneOnly)) {
$aRes['success'] = true;
}
}
}
echo json_encode($aRes);
}
示例2: RemindByPhoneAndLogin
/**
* напоминание пароля через телефон и логин.
*
* @param $phone
* @param $login
* @param $rnd
* @param $captchanum
*
* @return xajaxResponse
*/
function RemindByPhoneAndLogin($phone, $login, $rnd, $captchanum)
{
require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/sms_gate_a1.php';
require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/sbr_meta.php';
require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/users.php';
session_start();
$objResponse = new xajaxResponse();
$phone = trim($phone);
$login = trim($login);
// проверка капчи
$captcha = new captcha($captchanum);
if (!$captcha->checkNumber(trim($rnd))) {
$captcha->setNumber();
$error = 'Вы ввели неверную комбинацию букв';
sendPhoneRemindError($objResponse, $error, $captchanum, 'captcha');
return $objResponse;
}
// проверка правильности введенного номера
$i_phone = users::CheckSafetyPhone($phone);
if ($phone && $i_phone['error_flag']) {
$captcha->setNumber();
$error = 'Вы ввели телефон в недопустимом формате';
sendPhoneRemindError($objResponse, $error, $captchanum, 'phone');
return $objResponse;
}
// проверка наличия номера в базе
if ($phone) {
$safetyPhones = sbr_meta::findSafetyPhones($phone);
if (!count($safetyPhones)) {
$error = 'Этот номер телефона не связан ни с одним аккаунтом. Попробуйте восстановить доступ через логин или email';
$captcha->setNumber();
sendPhoneRemindError($objResponse, $error, $captchanum, 'phone');
return $objResponse;
}
foreach ($safetyPhones as $safetyPhone) {
$checkUser = new users();
$checkUser->GetUser($safetyPhone['login']);
if ($checkUser->is_banned) {
$error = 'Аккаунт с указанным номером телефона заблокирован или удален.\\nСожалеем, но восстановить пароль к нему в данный момент нельзя.';
$captcha->setNumber();
sendPhoneRemindError($objResponse, $error, $captchanum, 'login');
return $objResponse;
}
}
// если на один номер несколько аккаунтов и логин не указан
if (count($safetyPhones) > 1 && !$login) {
$captcha->setNumber();
$error = 'Вы не указали логин. Поле обязательно для заполнения, т.к. номер телефона привязан к нескольким аккаунтам';
sendPhoneRemindError($objResponse, $error, $captchanum, 'login');
return $objResponse;
}
// если номер не уникальный и указан логин
if (count($safetyPhones) > 1 || $login) {
foreach ($safetyPhones as $value) {
if ($value['login'] == $login) {
$safety = $value;
break;
}
}
if (!$safety) {
$error = 'Этот логин и номер телефона не связаны. Попробуйте восстановить доступ через логин или email';
$captcha->setNumber();
sendPhoneRemindError($objResponse, $error, $captchanum, 'phone login');
return $objResponse;
}
}
if (count($safetyPhones) === 1 && !$login) {
$safety = $safetyPhones[0];
}
}
// если указан логин и не указан номер
if ($login && !$phone) {
// проверяем существует ли пользователь с таким логином
$user = new users();
$user->GetUser($login);
if (!$user->uid) {
$error = 'Вы указали некорректный логин';
$captcha->setNumber();
sendPhoneRemindError($objResponse, $error, $captchanum, 'login');
return $objResponse;
}
if ($user->is_banned) {
$error = 'Аккаунт с указанным логином заблокирован или удален.\\nСожалеем, но восстановить пароль к нему в данный момент нельзя.';
$captcha->setNumber();
sendPhoneRemindError($objResponse, $error, $captchanum, 'login');
return $objResponse;
}
$safety = sbr_meta::findSafetyPhoneByLogin($login);
if (!$safety) {
$error = 'Этот логин не связан ни с одним номером телефона. Попробуйте восстановить доступ через логин или email';
//.........这里部分代码省略.........
示例3: ChangeSafetyPhone
/**
* Изменение номера телефона востановления паролья через SMS
*
* @param integer $uid ID пользователя
* @param string $phone номер телефона
*
* @return string сообщение об ошибке
*/
function ChangeSafetyPhone($uid, $phone, $only_phone)
{
global $DB;
$res = '';
$t_phone = change_q(stripslashes($phone), true);
$c_phone = users::CheckSafetyPhone($t_phone);
$phone = $c_phone['phone'];
$res = $c_phone['alert'][2];
if (!$res) {
$only_phone = $only_phone == 't' ? 't' : 'f';
$sql = "UPDATE users SET safety_phone=?, safety_only_phone=? WHERE uid=?i";
$DB->query($sql, $phone, $only_phone, $uid);
}
return $res;
}