Файл: wapclick.ga/registration.php
Строк: 78
<?php
defined('ROOT') or define('ROOT', str_replace('\', '/', realpath(dirname (__FILE__))));
require_once ROOT . '/system/init.php'; // инициализация ядра
if($is_user) {
redir (HOST);
}
page_head('Регистрация'); // название страницы
if(isset($_GET['ref_id']) && DB :: run() -> querySingle("SELECT count(*) FROM `users` WHERE `id` = ?", array(floatval($_GET['ref_id'])))==1) { $_SESSION['ref'] = floatval($_GET['ref_id']); } else { $_SESSION['ref'] = 0; }
echo '<div class="title">Регистрация</div>';
if(isset($_POST['login'], $_POST['password'], $_POST['email'], $_POST['captcha'])) {
$captcha = protect($_POST['captcha']);
$email = protect($_POST['email']);
$password = protect($_POST['password']);
$login = protect($_POST['login']);
if(empty($login))
$error = 'Пожалуйста, укажите ваш ник.';
elseif(strlenx($login) < 3 || strlenx($login) > 32)
$error = 'Количество символов в логине может быть от 3 до 32.';
elseif(empty($password))
$error = 'Пожалуйста, укажите ваш пароль.';
elseif(strlenx($password) < 6 || strlenx($password) > 32)
$error = 'Количество символов в пароле может быть от 6 до 32.';
elseif($password == $login)
$error = 'Логин не может быть таким же как пароль.';
elseif(empty($captcha))
$error = 'Введите код с картинки.';
elseif(empty($_SESSION['captcha']))
$error = 'Ошибка в сессиях.';
elseif(!preg_match('#^[a-z0-9-._]+@([a-z0-9-_]+.)+([a-z0-9]{2,4}).?$#ui', $email))
$error = 'Неправильно введен e-mail.';
elseif($_SESSION['captcha'] != $captcha)
$error = 'Код с картинки введен неверно.';
else {
$quelogin = DB :: run() -> querySingle("SELECT `id` FROM `users` WHERE lower(`login`)=? LIMIT 1;", array(strtolower($login)));
if(!empty($quelogin)) {
$error = 'Этот логин уже занят, выберите другой.';
} else {
$quemail = DB :: run() -> querySingle("SELECT `id` FROM `users` WHERE lower(`email`)=? LIMIT 1;", array(strtolower($email)));
if(!empty($quemail)) {
$error = 'Введенный e-mail уже привязан к другому аккаунту.';
}else {
// отсылаем письмо
$subject = 'Регистрация';
$regmail = "Здравствуйте, ".$login."!<br />rnВаши данные для входа в партнерскую программу;<br />rnЛогин: ".$login."<br />rnПароль: ".$password."<br />rn<br />
rnС уважением, Администрация партнерской программы http://t.tesik.ru<br />rnЭто системное сообщение, на него не нужно отвечать.<br />rn";
$adds = "From: <$set[reg_mail]>n";
$adds .= "X-sender: <$set[reg_mail]>n";
$adds .= "Content-Type: text/html; charset=utf-8n";
$subject = '=?utf-8?B?' . base64_encode($subject) . '?='; //subj encoding trouble!
@mail($email,$subject,$regmail,$adds);
$is_admin = DB :: run() -> querySingle("SELECT count(*) FROM `users`");
$set_admin = $is_admin == 0 ? 1 : 0;
DB :: run() -> query ('INSERT INTO `users` SET `login` = ?, `password` = ?, `email` = ?, `reg_time` = ?, `last_time` = ?, `ip` = ?, `ua` = ?, `admin` = ?;',
array($login, md5_hash($password), $email, TIME, TIME, $ip, $ua, $set_admin) );
if($_SESSION['ref'] != 0) {
$us = DB :: run() -> queryFetch('select login,id from users order by id desc limit 1');
DB :: run() -> query ('INSERT INTO `referals` SET `user_id` = ?, `ref` = ?;',
array($_SESSION['ref'], $us['login']));
DB :: run() -> query ('UPDATE `users` SET `referals` =`referals`+1 WHERE id = ?;',
array($us['id']));
}
setcookie('login', $login, TIME+3600*24*365, '/');
setcookie('password', $password, TIME+3600*24*365, '/');
redir (HOST);
}}
}
}
if (!empty($error)) {
echo '<div class="menu">'.$error.'</div>';
}
echo '<div class="menu">
<form action="'.HOST.'/registration/" method="POST">
Логин: <br />
<input type="text" name="login" /><br />
Пароль: <br />
<input type="password" name="password"/><br />
E-mail: <br />
<input type="text" name="email"/><br />
<img src="'.HOST.'/captcha.jpg" alt="вкл. картинки" /> <br />
<input type="text" size="9" name="captcha" /><br />
<input type="submit" value="Регистрация" /></form></div>
<a href="'.HOST.'/page/rules/"><div class="m"><b>Правила</b></div></a>
<a href="'.HOST.'/recovery/"><div class="m">Восстановление пароля</div></a>
';
echo '<a href="'.HOST.'/"><div class="foot">На главную</div></a>';
page_foot(); // низ сайта
?>