Вход Регистрация
Файл: register.php
Строк: 84
<?php
session_start
();
include (
'inc/db.php');
$title 'Букмекерская контора - регистрация';
include 
'inc/head.php';
include 
'inc/functions.php';
/*
** Функция для генерации соли, используемоей в хешировании пароля
** возращает 3 случайных символа
*/

function GenerateSalt($n=3)
{
    
$key '';
    
$pattern '1234567890abcdefghijklmnopqrstuvwxyz.,*_-=+';
    
$counter strlen($pattern)-1;
    for(
$i=0$i<$n$i++)
    {
        
$key .= $pattern{rand(0,$counter)};
    }
    return 
$key;
}

if (empty(
$_POST))
{
    
?>
<div class="name">Введите Ваши данные</div>
<div class="blockout">
<div class="blockin">
<form action="register.php" method="post" >
Логин:<br/>
<input type="text" name="login" /><br/>
WMR-кошелек:<br/>
<input type="text" name="wmr" value = "R"/><br/>
Пароль:<br/>
<input type="password" name="password" /><br/>
Повторите пароль:<br/>
<input type="password" name="password1" /><br/>
<img src="pic.php" alt="..."/><br/>
Введите число на картинке:<br/>
<input type="text" name="psw" /><br/>
<input type="submit" value="Зарегистрироваться" />
    </form>
    </div></div>
<div class="name">Навигация:</div>
<div class="blockout">
<div class="blockin">
<div class="link"><a href="index.php">На главную</a></div>
</div></div>
    <?php
}
else
{
    
// обрабатывае пришедшие данные функцией mysql_real_escape_string перед вставкой в таблицу БД

    
$login = (isset($_POST['login'])) ? mysql_real_escape_string($_POST['login']) : '';
    
$password = (isset($_POST['password'])) ? mysql_real_escape_string($_POST['password']) : '';
    
$login=htmlspecialchars(stripslashes(trim($login)));
    
$password=htmlspecialchars(stripslashes(trim($password)));
    
$login=str_replace("$","$$",$login);
    
$password=str_replace("$","$$",$password);
    
$password1 = (isset($_POST['password1'])) ? mysql_real_escape_string($_POST['password1']) : '';
    
$password1=htmlspecialchars(stripslashes(trim($password1)));
    
$password1=str_replace("$","$$",$password1);
    
$psw = (isset($_POST['psw'])) ? mysql_real_escape_string($_POST['psw']) : '';
    
$psw=htmlspecialchars(stripslashes(trim($psw)));
    
$psw=str_replace("$","$$",$psw);
    
$wmr = (isset($_POST['wmr'])) ? mysql_real_escape_string($_POST['wmr']) : '';
    
$wmr=htmlspecialchars(stripslashes(trim($wmr)));
    
$wmr=str_replace("$","$$",$wmr);
    
// проверяем на наличие ошибок (например, длина логина и пароля)
    
$error false;
    
$errort '';
    if (empty(
$wmr)) {
    
$error true;
    
$errort .= 'Заполните WMR-кошелек!<br/>';
    }
    if (
strlen($wmr) != 13)
    {
        
$error true;
        
$errort .= 'Длина WMR-кошелька должна быть 13 символов.<br />';
    }    
        if (!
preg_match("/^R.[0-9]+$/",$wmr))
    {
    
$error true;
    
$errort .= 'Неверные сиволы в WMR-кошельке!<br/>';
    }    
    
    
    if (empty(
$psw)) {
    
$error true;
    
$errort .= 'Введите число с картинки!<br/>';
    }
  if (
$_SESSION['pswd']!=$psw) {
      
$error true;
  
$errort .= 'Число на картинке и ваше не совпадают!<br/>';
  }
        if (!
preg_match("/^[a-zA-Z0-9._-]+$/",$login))
    {
    
$error true;
    
$errort .= 'Неверные сиволы в логине!<br/>';
    }
     if(!
preg_match("!^[a-z0-9]+$!i",$password))
{
     
$error true;
    
$errort .= 'Неверные символы в пароле!<br/>';
     }
        if (
strlen($login) < 2)
    {
        
$error true;
        
$errort .= 'Длина логина должна быть не менее 2х символов.<br />';
    }
    if (
strlen($password) < 6)
    {
        
$error true;
        
$errort .= 'Длина пароля должна быть не менее 6 символов.<br />';
    }
        if (
$password != $password1)
    {
        
$error true;
        
$errort .= 'Введеные вами пароли не совпадают!<br />';
    }

    
// проверяем, если юзер в таблице с таким же логином
    
$query "SELECT `id_user`
                FROM `user`
                WHERE `login`='
{$login}'
                LIMIT 1"
;
    
$sql mysql_query($query) or die(mysql_error());
    if (
mysql_num_rows($sql)==1)
    {
        
$error true;
        
$errort .= 'Пользователь с таким логином уже существует в базе данных, введите другой.<br />';
    }
// проверяем, если кошелек в таблице 
    
$query "SELECT `id_user`
                FROM `user`
                WHERE `wmr`='
{$wmr}'
                LIMIT 1"
;
    
$sql mysql_query($query) or die(mysql_error());
    if (
mysql_num_rows($sql)==1)
    {
        
$error true;
        
$errort .= 'Пользователь с таким WMR-кошельком уже существует в базе данных, введите другой.<br />';
    }

    
// если ошибок нет, то добавляем юзаре в таблицу

    
if (!$error)
    {
        
// генерируем соль и пароль

        
$salt GenerateSalt();
        
$hashed_password md5(md5($password) . $salt);

        
$query "INSERT
                    INTO `user`
                    SET
                        `login`='
{$login}',
                        `password`='
{$hashed_password}',
                        `salt`='
{$salt}',
                        `adm` = '0',
                        `money` = '
{$bonus}',
                        `wmr`='
{$wmr}'";

        
$sql mysql_query($query) or die(mysql_error());
?>
<div class="blockout">
<div class="blockin">
Поздравляем, Вы успешно зарегистрированы!
</div>
</div>
<div class="blockout">
<div class="blockin">
<div class="link"><a href="index.php">На главную</a></div>
</div></div>
<?
    
}
    else
    {
    
?>
<div class="name">Возникли следующие ошибки:</div>
<div class="blockout">
<div class="blockin">
    <?
        
print $errort;
        
?>
</div>
</div>
<div class="name">Навигация:</div>
<div class="blockout">
<div class="blockin">
<div class="link"><a href="register.php">Назад</a></div>
<div class="link"><a href="index.php">На главную</a></div>
</div></div>
<?
            
}
}
include (
'inc/foot.php');
?>
Онлайн: 0
Реклама