unset($capcha);
}
}
/* заносим введенный пользователем e-mail, если он пустой, то уничтожаем переменную */
if (isset($_POST['email'])) {
$email = $_POST['email'];
if ($email == '') {
unset($email);
}
}
$capcha = stripslashes($capcha); //sequrity чистим капчу
$capcha = htmlspecialchars($capcha);
$capcha = trim($capcha); //удаляем лишние пробелы
if (($capcha == $_SESSION["rand_code"]) && ($capcha != "")) { //проверяем капчу
} else {
exit("Капча введена неправильно");
}
if (empty($login) or empty($password) or empty($email) or empty($capcha)) { //если пользователь не ввел данные, то выдаем ошибку и останавливаем скрипт
exit("Вы ввели не всю информацию, вернитесь назад и заполните все поля!");
}
if (!preg_match("/[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}/i", $email)) { //проверка е-mail адреса регулярными выражениями на корректность
exit("Неверно введен е-mail!");
}
$login = stripslashes($login); //если логин и пароль введены, то обрабатываем их, чтобы теги и скрипты не работали, мало ли что люди могут ввести
$login = htmlspecialchars($login);
$password = stripslashes($password);
$password = htmlspecialchars($password);
$login = trim($login); //удаляем лишние пробелы
$password = trim($password);
/*......................Шифруем пароль...........................*/
//можно добавить несколько своих символов по вкусу, например, вписав "she".
//Если этот пароль будут взламывать методом подбора у себя на сервере этой же md5,то явно ничего хорошего не выйдет.
//Но советую ставить другие символы, можно в начале строки или в середине.
//При этом необходимо увеличить длину поля password в базе. Зашифрованный пароль может получится гораздо большего размера.
$password = md5($_POST['password'] . 'swl'); //шифруем пароль
include $_SERVER['DOCUMENT_ROOT'] . '/chat/dsn.php'; // подключаемся к базе
$sth = $dsn->prepare("SELECT id FROM users WHERE login=:login"); // проверка на существование пользователя с таким же логином
$sth->execute(array(':login' => $login));
if (!empty($sth->fetch(PDO::FETCH_ASSOC))) {
exit("Извините, введённый вами логин уже зарегистрирован. Введите другой логин.");
}
/*....................avatar................................*/
if (empty($_FILES['fupload']['name'])) {
//если переменной не существует (пользователь не отправил изображение),то присваиваем ему заранее приготовленную картинку с надписью "нет аватара"
$avatar = "avatars/noavatar.png"; //можете нарисовать net-avatara.jpg или взять в исходниках
} else {
//иначе – загружаем изображение пользователя
$path_to_90_directory = 'avatars/'; //папка, куда будет загружаться начальная картинка и ее сжатая копия
/* проверка формата исходного изображения */
if (preg_match('/[.](JPG)|(jpg)|(gif)|(GIF)|(png)|(PNG)$/', $_FILES['fupload']['name'])) {