File size: 5.28Kb
<?php
/**
* @name SHCMS Engine
* @copyright Shamsik © 2012
* Класс регистрации пользователей
*/
class registration
{
/*
* Проверка Логин
* @var pro_login($login)
*/
public function pro_login($login) {
//Проверяем введен ли Логин
if(empty($login)) {
return false;
}
//Если логин меньше 2 и больше 26 то допускаем его
elseif (mb_strlen($login) < 2 || mb_strlen($login) > 26) {
return false;
}
//Проверяем в логине на недоступность символов
if (!preg_match("#^([A-z0-9\-\_\ ])+$#ui", $login)) {
return false;
}
//Если введенный логин уже есть в базе данных то выводит ошибку
$reqlogin = mysql_query("SELECT * FROM `users` WHERE `login`='" . mysql_real_escape_string($login) . "'");
if (mysql_fetch_array($reqlogin) != 0) {
return false;
}
// проверка на длину логина и возможные символы
if (!preg_match("#^[a-zа-яё][a-zа-яё0-9\-\_\ ]{2,31}$#ui", $login)) {
return false;
}
// пробелы вначале или конце ника недопустимы
if (preg_match("#(^\ )|(\ $)#ui", $login)) {
return false;
}
return true;
}
/*
* Функция обработки логина
* @var pro_login($login)
*/
public function reg_login($login)
{
//Проверяем введен ли Логин
if(empty($login))
{
echo '<div class="errors">Вы не ввели логин!</div>';
header("Refresh: 1; url=?");
include_once H.'template/foot.php';
exit;
}
//Если логин меньше 2 и больше 26 то допускаем его
elseif (mb_strlen($login) < 2 || mb_strlen($login) > 26)
{
echo '<div class="errors">Логин должен быть не менее 2 и не более 26 символов</div>';
header("Refresh: 1; url=?");
include_once H.'template/foot.php';
exit();
}
//Проверяем в логине на недоступность символов
if (!preg_match("#^([A-z0-9\-\_\ ])+$#ui", $login))
{
errors('В логине присутствуют недопустимые символы!');
header("Refresh: 1; url=?");
include_once H.'template/foot.php';
exit();
}
//Если введенный логин уже есть в базе данных то выводит ошибку
$reqlogin = mysql_query("SELECT * FROM `users` WHERE `login`='" . mysql_real_escape_string($login) . "'");
if (mysql_fetch_array($reqlogin) != 0)
{
errors('Введенный вами логин уже зарегестрирован.');
header("Refresh: 1; url=?");
include_once H.'template/foot.php';
exit();
}
// проверка на длину логина и возможные символы
if (!preg_match("#^[a-zа-яё][a-zа-яё0-9\-\_\ ]{2,31}$#ui", $login)) {
errors('Запрещенный ник');
header("Refresh: 1; url=?");
include_once H.'template/foot.php';
exit();
}
// пробелы вначале или конце ника недопустимы
if (preg_match("#(^\ )|(\ $)#ui", $login)) {
errors('Запрещенный ник');
header("Refresh: 1; url=?");
include_once H.'template/foot.php';
exit();
}
}
/*
* Функция обработки Пороля
* @var reg_password($pass,$pass1)
*/
public function reg_password($pass,$pass1)
{
//Проверка на совпадения подтверждленного пороля
if($pass != $pass1)
{
errors ('Введенные вами пароли не совпадают');
header("Refresh: 1; url=?");
include_once H.'template/foot.php';
exit;
}
//Проверяем введен ли пороль
if(empty($pass))
{
errors('Вы не ввели пороль!');
header("Refresh: 1; url=?");
include_once H.'template/foot.php';
exit;
}
//Если пороль меньше 5 и больше 30 то допускаем пороль
elseif(mb_strlen($pass) < 5 or mb_strlen($pass) > 30)
{
errors('Пороль должен быть не менее 5 и не более 30 символов');
header("Refresh: 1; url=?");
include_once H.'template/foot.php';
exit();
}
//Проверяем на недоступность символов
if (preg_match("/[^\da-zA-Z_]+/", $pass))
{
errors('В пороле присутствуют недопустимые символы!');
header('Refresh: 1; url=?');
include_once H.'template/foot.php';
exit();
}
}
}
?>