当前位置: 首页>>代码示例>>PHP>>正文


PHP users::CheckSafetyPhone方法代码示例

本文整理汇总了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);
}
开发者ID:kapai69,项目名称:fl-ru-damp,代码行数:26,代码来源:safetyphone.server.php

示例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';
//.........这里部分代码省略.........
开发者ID:kapai69,项目名称:fl-ru-damp,代码行数:101,代码来源:remind.server.php

示例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;
 }
开发者ID:Nikitian,项目名称:fl-ru-damp,代码行数:23,代码来源:users.php


注:本文中的users::CheckSafetyPhone方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。