Файл: registration.php
Строк: 92
<?php
require_once 'core/system.php';
echo reg();
$header = 'Регистрация';
require_once 'core/head.php';
/*
header('Location: /index.php');
$_SESSION['err'] = 'Регистрация временно приостановлена';
exit();
*/
if(isset($_GET['inv'])){
$inv = mysql_fetch_assoc(mysql_query("SELECT id,nick ,storona from `user` where `id` = '".abs(intval($_GET['inv']))."'"));
if(!empty($inv['id'])){
echo '<center>Вы регистрируйтесь по приглашению игрока <b>'.$inv['nick'].'</b>!</center>';
}
}
switch($act) {
case 'post':
if(isset($_POST['nick']) && isset($_POST['pass']) && isset($_POST['pass2']) && isset($_POST['storona'])) {
$nick = check($_POST['nick']);
$pass = check($_POST['pass']);
$pass2 = check($_POST['pass2']);
$pol = num($_POST['pol']);
$storona = num($_POST['storona']);
/*
Не рекомендуется хранить пароли в базе в открытом виде. Их нужно шифровать. Для этого достаточно функции md5()
*/
if(strlen($nick) < 3 or strlen($nick) > 20) $err = 'Длина ника должна быть в пределах 3 - 20 символов';
if(strlen($pass) < 6 or strlen($pass) > 20) $err = 'Длина пароля должна быть в пределах 6 - 20 символов';
if(strlen($pass) != strlen($pass2)&$pass != $pass2) $err = 'Пароли не совпадают!';
/*
Проверяем длину ника и пароля с помощью функции strlen(). Она считает количество символов в том числе пробелы.
*/
if(mysql_result(mysql_query("SELECT COUNT(*) FROM `user` WHERE `nick` = '$nick'"),0) == true) $err = 'Пользователь с таким ником уже существует, необходимо выбрать другой';
if(mysql_result(mysql_query("SELECT COUNT(*) FROM `user` where `ip` = '".check($_SERVER['REMOTE_ADDR'])."'"),0) == true) $err = 'Нельзя регистрировать более 1-ого персонажа';
/*
С помощью запроса в базу проверяем есть ли уже такой ник или нет.
Запрос может вернуть 2 значения
<strong> FALSE</strong> - отрицательный
*/
// запись
if(!isset($err)) {
/*
Проверяем есть ли ошибки при обработке. Если есть, пропускаем запись и выводим ошибку
*/
mysql_query("INSERT INTO `user` SET `nick` = '$nick', `pass` = '$pass', `pol` = '$pol', `storona` = '$storona', `timereg` = '".time()."', `mana` = 1050, `max_mana` = 1050, `health` = 120, `max_health` = 120, `sila` = 120, `lovk` = 120, `zashit` = 120,`gold` = 1000, `silver` = 10000");
if(!empty($inv['id'])){
mysql_query("INSERT INTO `ref` set `nak` = '".$inv['id']."', `id_us` = '".mysql_insert_id()."'");
}
// Ставим куки на год
setcookie('nick', $nick, time()+86400*365, '/');
setcookie('pass', $pass, time()+86400*365, '/');
header('Location: /index.php');
$_SESSION['message'] = 'Регистрация успешно завершена! ';
exit();
}else{
header('Location: /registration.php');
$_SESSION['err'] = $err;
// Вывод ошибки
exit();
}
}else{
header('Location: /registration.php');
$_SESSION['err'] = 'Введите данные';
exit();
}
break;
default:
echo "<div class='player center blue'>Зарегистрируйся сейчас и получи подарок на выбор!</div>";
echo "<div class='mini-line'></div>";
echo '<form class="player" method="post" action="/registration.php?act=post'.(!empty($inv['id'])?'&inv='.$inv['id']:null).'">
Желаемый ник: <br /><input class="text large" type="text" name="nick" /><br />
Введите пароль: <br /><input class="text large" type="password" name="pass" /><br />
Подтвердите пароль: <br /><input class="text large" type="password" name="pass2" /><br />
Cторона: <br />
<select name="storona">
<option value="0">Асура</option>
<option value="1">Борея</option>
</select><br />
Ваш пол: <br />
<select name="pol">
<option value="1">Мужской</option>
<option value="0">Женский</option>
</select><br />
<center><span class="btn"><span class="end"><input class="label" type="submit" value="Завершить"></span></span></center>
</form>';
}
require_once 'core/foot.php';
?>