本文整理汇总了PHP中captcha::setNumber方法的典型用法代码示例。如果您正苦于以下问题:PHP captcha::setNumber方法的具体用法?PHP captcha::setNumber怎么用?PHP captcha::setNumber使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类captcha
的用法示例。
在下文中一共展示了captcha::setNumber方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: captcha
require_once 'classes/functions.php';
require_once 'classes/class.browser.php';
require_once 'classes/class.thread.php';
require_once 'classes/class.operator.php';
require_once 'classes/class.visitor.php';
require_once 'classes/class.threadprocessor.php';
require_once 'classes/class.smartyclass.php';
require_once 'classes/class.visitsession.php';
define('AUTOBAN_PERIOD', 20 * 60);
// 20 minutes
require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/captcha.php';
$captcha = new captcha();
$theme = Browser::getCurrentTheme();
$thread = tryToGetExistingThread();
if (!isset($_REQUEST['captcha'])) {
$captcha->setNumber();
}
$isBanned = MapperFactory::getMapper('Ban')->isBanned(Browser::GetExtAddr());
$shouldBeBanned = !$isBanned && empty($thread) && is_numeric(Settings::Get('max_sessions')) && Settings::Get('max_sessions') > 0 && MapperFactory::getMapper('Thread')->countOpenThreadsForIP(Browser::GetExtAddr()) + 1 > Settings::Get('max_sessions');
if ($shouldBeBanned) {
$utime = getCurrentTime() + AUTOBAN_PERIOD;
// BAN 24*60*60
$hashTable = array('till' => date('Y-m-d H:i:s', $utime), 'address' => Browser::GetExtAddr(), 'comment' => Resources::Get('ban.autoban.message', Settings::Get('max_sessions')), 'created' => null);
MapperFactory::getMapper('Ban')->save($hashTable);
$isBanned = true;
}
$departmentkey = verify_param('departmentkey', "/^\\w+\$/");
$numberOfOnline = Operator::getInstance()->countOnlineOperators(null, $departmentkey, Resources::getCurrentLocale());
//TODO: write this form departments $departmentkey, Resources::getCurrentLocale());
if ($numberOfOnline == 0 && empty($thread)) {
showLeaveMessagePage();
示例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: uniqid
<?php
require_once $_SERVER['DOCUMENT_ROOT'] . "/xajax/remind.common.php";
$xajax->printJavascript('/xajax/');
$captchanum = uniqid('', true);
if ($_SESSION) {
foreach ($_SESSION as $k => $v) {
if (strpos("image_number", $k) === 0) {
unset($_SESSION[$k]);
}
}
}
$captcha = new captcha($captchanum);
$captcha->setNumber();
$captcha2 = new captcha('2_' . $captchanum);
$captcha2->setNumber();
?>
<div class="b-layout b-layout_padtop_45">
<div class="g-txt_center" id="email_remind">
<h1 class="b-layout__title b-layout__title_lh_1 b-layout__title_fs24 b-layout__title_color_333 b-layout__title_padbot_25">
Для восстановления доступа к аккаунту заполните форму ниже
</h1>
<div class="b-layout b-layout_inline-block b-layout_width_330 b-layout_width_full_iphone">
<table class="b-layout__table b-layout__table_width_full">
<tbody>
<tr class="b-layout__tr">
<td class="b-layout__td b-layout__td_padbot_30 b-layout__td_relative b-layout__td_width_full_ipad">
示例4: qiwipurseAction
public function qiwipurseAction()
{
front::og('tpl')->page = 'index';
front::og('tpl')->script = '/scripts/bill2.js';
require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/qiwipay.php';
$qiwipay = new qiwipay($this->uid);
require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/captcha.php';
$captcha = new captcha();
if ($_POST['action'] == 'create') {
$error = $qiwipay->createBill($_POST);
if (!$error) {
$_SESSION['bill.GET']['success'] = $qiwipay->form['sum'];
header("Location: /{$this->name_page}/qiwipurse/");
exit;
}
$captcha->setNumber();
front::og('tpl')->alert = $error;
front::og('tpl')->comment = $qiwipay->form['comment'];
} else {
$captcha->setNumber();
}
front::og('tpl')->sum = $_POST['sum'];
// $qiwipay->form['sum'];
front::og('tpl')->phone = $qiwipay->form['phone'];
if (isset($_SESSION['bill.GET']['success'])) {
front::og('tpl')->success = $_SESSION['bill.GET']['success'];
unset($_SESSION['bill.GET']['success']);
}
front::og('tpl')->display('bill/bill_qiwipurse.tpl');
}