function regUser($name, $login, $password, $email, $phone, $role) { global $db; global $error_reg; global $user_id; $active_key = substr(md5(uniqid()), 0, 13); //уникальный ключ для подтверждения регистрации if (empty($password)) { $password = generate_password(rand(10, 20)); } else { $password = hs($password); } checkUniq($login, $email); if (empty($error_reg)) { try { $query = $db->prepare("INSERT INTO users (`user_id`, `name`, `login`, `password`, `email`, `phone`, `role`, `activate`) VALUES (:user_id, :name, :login, :password, :email, :phone, :role, :activate)"); $query->execute(array(':user_id' => $user_id, ':name' => $name, ':login' => $login, ':password' => $password, ':email' => $email, ':phone' => $phone, ':role' => $role, ':activate' => $active_key)); $user_id = $db->lastInsertID(); regUserMailer($email, $user_id, $active_key); //шлем на мыло пользователю ссылку для активации аккаунта return $user_id; } catch (PDOException $e) { $e->getMessage(); } } }
<?php require "../classes/Lib.php"; require "../classes/DB.php"; $email = clearStr($_GET['email']); $user_id = clearInt($_GET['user_id']); $active_key = clearStr($_GET['active_key']); if (confirmReg($user_id, $active_key)) { $message = "Успешное подтверждение регистрации. Теперь вы можете авторизоваться."; header("Refresh:4; ../index.php"); } else { $message = "Ошибка подтверждения регистрации. Для повторного подтверждения регистрации нажмите на <a href='{$_SERVER['PHP_SELF']}?re=re'>ссылку</a>"; } if (clearStr($_GET['re']) === 're') { regUserMailer($email, $user_id, $active_key); } //подгружаем блок head и стили require "../inc/head.inc.php"; ?> <body> <div class="container-fluid"> <div class="row"> <div class="col-md-10"> <h1 class="bg-success"><?php echo $message; ?> </h1> <p class="bg-info">Сейчас вы будете перенаправлены на главную. Если не хотите ждать нажмите на <a href='../index.php'>ссылку</a></a> </p> </div> </div>