本文整理汇总了PHP中USER::getUserInfoByEmail方法的典型用法代码示例。如果您正苦于以下问题:PHP USER::getUserInfoByEmail方法的具体用法?PHP USER::getUserInfoByEmail怎么用?PHP USER::getUserInfoByEmail使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类USER
的用法示例。
在下文中一共展示了USER::getUserInfoByEmail方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: validDataForm
/**
* Проверяет корректность введенных данных в форме регистрации.
*
* @param array $userData массив данных пользователя.
* @param string $mode режим проверки данных (full|pass) полный (по умолчанию) или только пароль.
* @return string ошибка в случае не верного ввода данных в одном из полей.
*/
public function validDataForm($userData, $mode = 'full')
{
// Проверка электронного адреса.
if (USER::getUserInfoByEmail($userData['email']) && 'full' == $mode) {
$error .= '<span class="email-in-use">Указанный email уже используется</span>';
}
// Пароль должен быть больше 5-ти символов.
if (strlen($userData['pass']) < 5) {
$error .= '<span class="passError">Пароль менее 5 символов</span>';
}
// Проверяем равенство введенных паролей.
if (URL::getQueryParametr('pass2') != $userData['pass']) {
$error .= '<span class="wrong-pass">Введенные пароли не совпадают</span>';
}
if ('full' == $mode) {
// Проверка электронного адреса.
if (!preg_match('/^[-._a-zA-Z0-9]+@(?:[a-zA-Z0-9][-a-zA-Z0-9]{0,61}+\\.)+[a-zA-Z]{2,6}$/', $userData['email'])) {
$error .= '<span class="errorEmail">Неверно заполнено email</span>';
}
if (MG::getSetting('useCaptcha') == "true") {
if (strtolower(URL::getQueryParametr('capcha')) != strtolower($_SESSION['capcha'])) {
$error .= "<span class='error-captcha-text'>Текст с картинки введен неверно!</span>";
}
}
}
$args = func_get_args();
return MG::createHook(__CLASS__ . "_" . __FUNCTION__, $error, $args);
}
示例2: __construct
function __construct()
{
if (User::isAuth()) {
MG::redirect('/');
}
// Шаг первый.
$form = 1;
$fPass = new Models_Forgotpass();
// Ввторой шаг, производящий проверку введеного электронного адреса.
if (URL::getQueryParametr('forgotpass')) {
$email = URL::getQueryParametr('email');
if ($userInfo = USER::getUserInfoByEmail($email)) {
//Если введенных адрес совпадает с зарегистрированным в системе, то
$form = 0;
$message = 'Инструкция по восстановлению пароля была отправлена на <strong>' . $email . '</strong>';
$hash = $fPass->getHash($email);
//а) Случайный хэш заносится в БД.
$fPass->sendHashToDB($email, $hash);
$siteName = MG::getOption('sitename');
$emailMessage = MG::layoutManager('email_forgot', array('siteName' => $siteName, 'email' => $email, 'hash' => $hash, 'userId' => $userInfo->id, 'link' => SITE . '/forgotpass?sec=' . $hash . '&id=' . $userInfo->id));
$emailData = array('nameFrom' => $siteName, 'emailFrom' => MG::getSetting('noReplyEmail'), 'nameTo' => 'Пользователю сайта ' . $siteName, 'emailTo' => $email, 'subject' => 'Восстановление пароля на сайте ' . $siteName, 'body' => $emailMessage, 'html' => true);
//б) На указанный электронный адрес отправляется письмо со сылкой на страницу восстановления пароля.
$fPass->sendUrlToEmail($emailData);
} else {
$form = 0;
$error = 'К сожалению, такой логин не найден<br>
Если вы уверены, что данный логин существует, пожалуйста, свяжитесь с нами.';
}
}
// Шаг 3. Обработка перехода по ссылки. Принимается id пользователя и сгенерированный хэш.
if ($_GET) {
$userInfo = USER::getUserById(URL::getQueryParametr('id'));
$hash = URL::getQueryParametr('sec');
// Если присланный хэш совпадает с хэшом из БД для соответствующего id.
if ($userInfo->restore == $hash) {
$form = 2;
// Меняе в БД случайным образом хэш, делая невозможным повторный переход по ссылки.
$fPass->sendHashToDB($userInfo->email, $fPass->getHash('0'));
$_SESSION['id'] = URL::getQueryParametr('id');
} else {
$form = 0;
$error = 'Некорректная ссылка. Повторите заново запрос восстановления пароля.';
}
}
// Шаг 4. обрабатываем запрос на ввод нового пароля
if (URL::getQueryParametr('chengePass')) {
$form = 2;
$person = new Models_Personal();
$msg = $person->changePass(URL::getQueryParametr('newPass'), $_SESSION['id'], true);
if ('Пароль изменен' == $msg) {
$form = 0;
$message = $msg . '! ' . 'Вы можете войти в личный кабинет по адресу <a href="' . SITE . '/enter" >' . SITE . '/enter</a>';
$fPass->activateUser($_SESSION['id']);
unset($_SESSION['id']);
} else {
$error = $msg;
}
}
$this->data = array('error' => $error, 'message' => $message, 'form' => $form, 'meta_title' => 'Восстановление пароля', 'meta_keywords' => $model->currentCategory['meta_keywords'] ? $model->currentCategory['meta_keywords'] : "забыли пароль, восстановить пароль, восстановление пароля", 'meta_desc' => $model->currentCategory['meta_desc'] ? $model->currentCategory['meta_desc'] : "Если вы забыли пароль от личного кабинета, его модно восстановить с помощью формы восстановления паролей.");
}
示例3: confirmOrder
/**
* Возвращает сообщение о статусе заказа "Подтвержден".
* @param type $pay - id заказа.
* @return mixed - сообщение и email пользователя.
*/
public function confirmOrder($id)
{
// Модель для работы заказом.
$model = new Models_Order();
// Информация о заказе по переданному id.
$orderInfo = $model->getOrder('`' . PREFIX . 'order`.id = "' . $id . '"');
$hash = URL::getQueryParametr('sec');
// Информация о пользователе, сделавший заказ .
$orderUser = USER::getUserInfoByEmail($orderInfo[$id]['user_email']);
// Если присланный хэш совпадает с хэшом из БД для соответствующего id.
if ($orderInfo[$id]['confirmation'] == $hash) {
if ($orderInfo[$id]['hash'] == '') {
$msg = 'Посмотреть статус заказа Вы можете в <a href="' . SITE . '/personal">личном кабинете</a>.';
} else {
$msg = 'Следить за статусом заказа Вы можете по ссылке <br> ' . '<a href="' . SITE . '/order?hash=' . $orderInfo[$id]['hash'] . '">' . SITE . '/order?hash=' . $orderInfo[$id]['hash'] . '</a>';
}
// Если статус заказа "Не подтвержден".
if (0 == $orderInfo[$id]['status_id']) {
// Подтверждаем заказ.
$orderStatus = 1;
// если оплата выбрана наложенным платежём, то статус заказа изменяем на "в доставке"
if ($orderInfo[$id]['payment_id'] == 3) {
$orderStatus = 3;
}
$model->sendStatusToEmail($id, $orderStatus);
$model->setOrderStatus($id, $orderStatus);
$orderNumber = $orderInfo[$id]['number'];
$orderId = $id;
$msg = 'Ваш заказ №' . $orderNumber . ' подтвержден и передан на обработку. <br>
' . $msg;
} else {
$msg = 'Заказ уже подтвержден и находится в работе. <br>
' . $msg;
}
if (!$orderUser->activity) {
$userEmail = $orderUser->email;
$_SESSION['id'] = $orderUser->id;
}
} else {
$msg = 'Некорректная ссылка.<br> Заказ не подтвержден<br>';
}
$result = array('msg' => $msg, 'userEmail' => $userEmail);
return $result;
}
示例4: printOrder
/**
* Выводит на экран печатную форму для печати заказа в админке.
* @param int $id - id заказа.
* @param boolean $sign использовать ли подпись.
* @return array
*/
public function printOrder($id, $sign = true)
{
$orderInfo = $this->getOrder('id=' . DB::quote($id, true));
$order = $orderInfo[$id];
$perOrders = unserialize(stripslashes($order['order_content']));
$currency = MG::getSetting('currency');
$totSumm = $order['summ'] + $order['cost'];
$paymentArray = $this->getPaymentMethod($order['payment_id']);
$order['name'] = $paymentArray['name'];
$propertyOrder = MG::getOption('propertyOrder');
$propertyOrder = stripslashes($propertyOrder);
$propertyOrder = unserialize($propertyOrder);
$paramArray = $this->getParamArray(7, $order['id'], $order['summ']);
foreach ($paramArray as $k => $field) {
$paramArray[$k]['value'] = htmlentities($paramArray[$k]['value'], ENT_QUOTES, "UTF-8");
}
$customer = unserialize(stripslashes($order['yur_info']));
$customerInfo = $customer['inn'] . ', ' . $customer['kpp'] . ', ' . $customer['nameyur'] . ', ' . $customer['adress'] . ', ' . $customer['bank'] . ', ' . $customer['bik'] . ', ' . $customer['ks'] . ', ' . $customer['rs'] . ', ' . $customer['nameyur'];
//var_dump(json_decode($order['yur_info']));
//viewData(json_decode(stripslashes($order['yur_info'])));
$ylico = false;
if (empty($customer['inn']) || empty($customer['bik'])) {
$fizlico = true;
$userInfo = USER::getUserInfoByEmail($order['user_email']);
$customerInfo = $order['name_buyer'] . ',' . $order['address'] . ', тел. ' . $order['phone'] . ', ' . $order['email'];
}
// $customerInfo = '0';
$customerInfo = htmlspecialchars($customerInfo);
$data['propertyOrder'] = $propertyOrder;
$data['order'] = $order;
$data['customerInfo'] = $customerInfo;
$data['perOrders'] = $perOrders;
$data['currency'] = $currency;
$html = MG::layoutManager('print_order', $data);
return $html;
}
示例5: ulogin_registration_user
/**
* Регистрация на сайте и в таблице uLogin
* @param Array $u_user - данные о пользователе, полученные от uLogin
* @param int $in_db - при значении 1 необходимо переписать данные в таблице uLogin
* @return bool|int|Error
*/
function ulogin_registration_user($u_user, $in_db = 0)
{
if (!isset($u_user['email'])) {
die("Через данную форму выполнить вход/регистрацию невозможно. </br>" . "Сообщиете администратору сайта о следующей ошибке: </br></br>" . "Необходимо указать <b>email</b> в возвращаемых полях <b>uLogin</b>");
}
$u_user['network'] = isset($u_user['network']) ? $u_user['network'] : '';
$u_user['phone'] = isset($u_user['phone']) ? $u_user['phone'] : '';
// данные о пользователе есть в ulogin_table, но отсутствуют в Базе
if ($in_db == 1) {
DB::query("DELETE FROM " . PREFIX . "ulogin WHERE `identity` = " . DB::quote($u_user['identity']));
}
$user_id = USER::getUserInfoByEmail($u_user['email']);
$user_id = $user_id->id;
// $check_m_user == true -> есть пользователь с таким email
$check_m_user = $user_id > 0 ? true : false;
$current_user = USER::isAuth() ? USER::getThis() : 0;
// $isLoggedIn == true -> ползователь онлайн
$isLoggedIn = isset($current_user->id) && $current_user->id > 0 ? true : false;
if (!$check_m_user && !$isLoggedIn) {
// отсутствует пользователь с таким email в базе -> регистрация
$date = explode('.', $u_user['bdate']);
$insert_user = array('pass' => md5(microtime(true)), 'email' => $u_user['email'], 'role' => 2, 'name' => $u_user['first_name'], 'sname' => $u_user['last_name'], 'address' => '', 'phone' => $u_user['phone'], 'birthday' => $date['2'] . '-' . $date['1'] . '-' . $date['0'], 'activity' => 1);
$user_id = USER::add($insert_user);
$user_id = DB::insertId();
$userData = USER::getUserById($user_id);
$res = DB::query("INSERT INTO " . PREFIX . "ulogin (user_id, identity, network)\n\t\tVALUES (" . DB::quote($user_id) . "," . DB::quote($u_user['identity']) . "," . DB::quote($u_user['network']) . ")");
return $userData->id;
} else {
// существует пользователь с таким email или это текущий пользователь
if (!isset($u_user["verified_email"]) || intval($u_user["verified_email"]) != 1) {
die('<head></head><body><script src="//ulogin.ru/js/ulogin.js" type="text/javascript"></script><script type="text/javascript">uLogin.mergeAccounts("' . $_POST['token'] . '")</script>' . "Электронный адрес данного аккаунта совпадает с электронным адресом существующего пользователя. <br>Требуется подтверждение на владение указанным email.</br></br>" . "Подтверждение аккаунта" . "</body>");
}
if (intval($u_user["verified_email"]) == 1) {
$user_id = $isLoggedIn ? $current_user->id : $user_id;
$other_u = DB::query("SELECT identity FROM " . PREFIX . "ulogin where `user_id` = " . DB::quote($user_id));
$other_u = DB::fetchAssoc($other_u);
if ($other_u) {
if (!$isLoggedIn && !isset($u_user['merge_account'])) {
die('<head></head><body><script src="//ulogin.ru/js/ulogin.js" type="text/javascript"></script><script type="text/javascript">uLogin.mergeAccounts("' . $_POST['token'] . '","' . $other_u['identity'] . '")</script>' . "С данным аккаунтом уже связаны данные из другой социальной сети. <br>Требуется привязка новой учётной записи социальной сети к этому аккаунту.<br/>" . "Синхронизация аккаунтов" . "</body>");
}
}
DB::query("INSERT INTO " . PREFIX . "ulogin (user_id, identity, network)\n\t\t\tVALUES (" . DB::quote($user_id) . "," . DB::quote($u_user['identity']) . "," . DB::quote($u_user['network']) . ")");
return $user_id;
}
}
return false;
}
示例6: _sendActivationMail
/**
* Метод отправки письма для активации пользователя.
* @param type $userEmail
* @return void
*/
private function _sendActivationMail($userEmail)
{
$userId = USER::getUserInfoByEmail($userEmail)->id;
$hash = $this->fPass->getHash($userEmail);
$this->fPass->sendHashToDB($userEmail, $hash);
$siteName = MG::getOption('sitename');
$link = '<a href="' . SITE . '/registration?sec=' . $hash . '&id=' . $userId . '" target="blank">' . SITE . '/registration?sec=' . $hash . '&id=' . $userId . '</a>';
$paramToMail = array('siteName' => $siteName, 'userEmail' => $userEmail, 'link' => $link);
$message = MG::layoutManager('email_registry', $paramToMail);
$emailData = array('nameFrom' => $siteName, 'emailFrom' => MG::getSetting('noReplyEmail'), 'nameTo' => 'Пользователю сайта ' . $siteName, 'emailTo' => $userEmail, 'subject' => 'Активация пользователя на сайте ' . $siteName, 'body' => $message, 'html' => true);
$this->fPass->sendUrlToEmail($emailData);
}
示例7: confirmOrder
/**
* Возвращает сообщение о статусе заказа "Подтвержден".
* @param type $pay - id заказа.
* @return mixed - сообщение и email пользователя.
*/
public function confirmOrder($id)
{
// Модель для работы заказом.
$model = new Models_Order();
// Информация о заказе по переданному id.
$orderInfo = $model->getOrder(PREFIX . 'order.id = "' . $id . '"');
$hash = URL::getQueryParametr('sec');
// Информация о пользователе, сделавший заказ .
$orderUser = USER::getUserInfoByEmail($orderInfo[$id]['user_email']);
// Если присланный хэш совпадает с хэшом из БД для соответствующего id.
if ($orderInfo[$id]['confirmation'] == $hash) {
// Если статус заказа "Не подтвержден".
if (0 == $orderInfo[$id]['status_id']) {
// Подтверждаем заказ.
$model->setOrderStatus($id, 1);
$orderId = $id;
} else {
$msg = 'Заказ уже подтвержден и находится в работе. <br>
Посмотреть статус заказа Вы можете в <a href="' . SITE . '/personal">личном кабинете</a>.';
}
if (!$orderUser->activity) {
$userEmail = $orderUser->email;
$_SESSION['id'] = $orderUser->id;
}
} else {
$msg = 'Некорректная ссылка.<br> Заказ не подтвержден<br>';
}
$result = array('msg' => $msg, 'userEmail' => $userEmail);
return $result;
}
示例8: printOrder
/**
* Выводит на экран печатную форму для печати заказа в админке.
* @param int $id - id заказа.
* @param boolean $sign использовать ли подпись.
* @return array
*/
public function printOrder($id, $sign = true)
{
$orderInfo = $this->getOrder('id=' . DB::quote($id, true));
$order = $orderInfo[$id];
$perOrders = unserialize(stripslashes($order['order_content']));
$currency = MG::getSetting('currency');
$totSumm = $order['summ'] + $order['cost'];
$paymentArray = $this->getPaymentMethod($order['payment_id']);
$order['name'] = $paymentArray['name'];
$propertyOrder = MG::getOption('propertyOrder');
$propertyOrder = stripslashes($propertyOrder);
$propertyOrder = unserialize($propertyOrder);
$paramArray = $this->getParamArray(7, $order['id'], $order['summ']);
foreach ($paramArray as $k => $field) {
$paramArray[$k]['value'] = htmlentities($paramArray[$k]['value'], ENT_QUOTES, "UTF-8");
}
$customer = unserialize(stripslashes($order['yur_info']));
$customerInfo = $customer['inn'] . ', ' . $customer['kpp'] . ', ' . $customer['nameyur'] . ', ' . $customer['adress'] . ', ' . $customer['bank'] . ', ' . $customer['bik'] . ', ' . $customer['ks'] . ', ' . $customer['rs'] . ', ' . $customer['nameyur'];
$ylico = false;
if (empty($order['yur_info'])) {
$fizlico = true;
$userInfo = USER::getUserInfoByEmail($order['user_email']);
$customerInfo = $userInfo->name . ' ' . $userInfo->sname . ',' . $order['address'] . ', тел. ' . $order['phone'] . ', ' . $order['email'];
}
$html = '
<style type="text/css">
.form-wrapper table{border-collapse: collapse;width:100%;color:#000;}
.form-wrapper small-table{border-collapse: separate;}
.form-wrapper table tr th{padding: 10px;border: 1px solid #000;background:#FFFFE0;}
.form-wrapper .who-pay tr td{padding: 5px;}
.form-wrapper .who-pay tr td.name{width: 110px;}
.form-wrapper .who-pay{margin: 10px 0 0 0;}
.form-wrapper table tr td{padding: 5px;border: 1px solid #000;}
.form-wrapper table tr td.bottom{border: none;text-align: right;}
.form-wrapper .order-total{margin: 10px 0 0 0;color:#000;}
.form-wrapper .title{text-align:center;font-size:24px;color:#000;}
.form-wrapper .total-list{list-style:none;}
.form-wrapper .no-border, .form-wrapper .who-pay tr td, .form-wrapper .small-table tr td{border:none;}
.form-wrapper .colspan4{border:none;text-align:right;}
.form-wrapper .rowspan2{vertical-align:bottom;}
.form-wrapper .nowrap{white-space:nowrap;}
.yur-table td {height:30px;}
.form-table td {height:30px; vertical-align: baseline;}
.p {height:30px; vertical-align: baseline;}
</style>
<div class="form-wrapper">
<strong>' . $propertyOrder['nameyur'] . '</strong><br>
' . $propertyOrder['adress'] . '
<br/>
<br/>
<table class="yur-table">
<tr>
<td>
ИНН ' . $propertyOrder['inn'] . '
</td>
<td>КПП ' . $propertyOrder['kpp'] . '</td>
<td rowspan="2" class="rowspan2 nowrap" valign="middle">Сч. №</td>
<td rowspan="2" class="rowspan2" valign="bottom">' . $propertyOrder['rs'] . '</td>
</tr>
<tr>
<td colspan="2">Получатель <br>' . $propertyOrder['nameyur'] . '</td>
</tr>
<tr>
<td colspan="2" rowspan="2">Банк получателя <br>' . $propertyOrder['bank'] . '</td>
<td>БИК</td>
<td>' . $propertyOrder['bik'] . '</td>
</tr>
<tr>
<td class="nowrap">Сч. №</td>
<td>' . $propertyOrder['ks'] . '</td>
</tr>
</table>
<h1 class="title">
Счет <strong>№ ' . $propertyOrder['prefix'] . $order['id'] . '</strong>
от ' . date('d.m.Y', strtotime($order['add_date'])) . '
</h1>
<table class="who-pay">
<tr>
<td class="name" width="100">Плательщик:</td>
<td width="760">' . $customerInfo . '</td>
</tr>
</table>
<br />
<br />
<table class="form-table">
<tr>
<th bgcolor="#FFFFE0" width="40">№</th>
<th bgcolor="#FFFFE0" width="327">Товар</th>
<th bgcolor="#FFFFE0" >Артикул</th>
<th bgcolor="#FFFFE0" >Цена</th>
<th bgcolor="#FFFFE0" width="70">Кол-во</th>
<th bgcolor="#FFFFE0" width="50">НДС</th>
<th bgcolor="#FFFFE0" >Сумма</th>
</tr>';
//.........这里部分代码省略.........
示例9:
Ваш заказ <b>№<?php
echo $data['orderNumber'];
?>
</b>
принят к выполнению в магазине <?php
echo $data['shopName'];
?>
.
<p class="confirm-info" style="font-size:12px;margin:0 0 10px 0">
<br>
Подтвердите заказ, перейдя <br> по <?php
echo $data['confirmLink'];
?>
<br>
<?php
if ($data['toKnowStatus'] == '' && !USER::getUserInfoByEmail($data['email'])->activity) {
?>
<span style="color:red">Автоматически будет создана учетная запись для доступа в Ваш личный кабинет.</span>
<?php
}
?>
</p>
<br>
Мы будем оповещать Вас о ходе выполнения заказа по почте.
<br>
<?php
if ($data['toKnowStatus'] == '') {
?>
После подтверждения заказа, Вы можете в любой момент самостоятельно узнать статус заказа в Вашем
示例10:
<div style="font-size:12px;line-height:16px;margin:0;">
Ваш заказ <b>№<?php
echo $data['orderNumber'];
?>
</b>
принят к выполнению в магазине <?php
echo $data['shopName'];
?>
.
<p class="confirm-info" style="font-size:12px;margin:0 0 10px 0">
<br>
Подтвердите заказ, перейдя <br> по <?php
echo $data['confirmLink'];
?>
<?php
if (!USER::getUserInfoByEmail($data['email'])) {
?>
<br>
<span style="color:red">Автоматически будет создана учетная запись для доступа в ваш личный кабинет.</span>
<?php
}
?>
</p>
<br>
Мы будем оповещать Вас о ходе выполнения заказа по почте.
<br>
После подтверждения заказа, Вы можете в любой момент самостоятельно узнать статус заказа в Вашем
<a href="<?php
echo SITE;
?>
示例11: _sendActivationMail
/**
* Метод отправки письма для активации пользователя.
* @param type $userEmail
* @return void
*/
private function _sendActivationMail($userEmail)
{
$userId = USER::getUserInfoByEmail($userEmail)->id;
$hash = $this->fPass->getHash($userEmail);
$this->fPass->sendHashToDB($userEmail, $hash);
$siteName = MG::getOption('sitename');
$message = '
Здравствуйте!<br>
Вы получили данное письмо так как зарегистрировались на сайте ' . $siteName . ' с логином ' . $userEmail . '.<br>
Для активации пользователя и возможности пользоваться личным кабинетом пройдите по ссылке: <a href="' . SITE . '/registration?sec=' . $hash . '&id=' . $userId . '" target="blank">' . SITE . '/registration?sec=' . $hash . '&id=' . $userId . '</a>.<br>
Отвечать на данное сообщение не нужно.';
$emailData = array('nameFrom' => $siteName, 'emailFrom' => MG::getSetting('noReplyEmail'), 'nameTo' => 'Пользователю сайта ' . $siteName, 'emailTo' => $userEmail, 'subject' => 'Активация пользователя на сайте ' . $siteName, 'body' => $message, 'html' => true);
$this->fPass->sendUrlToEmail($emailData);
}