0

有人可以帮我登录后自动注册吗,这是我的注册脚本...

if (empty($_POST) === false) {
$required_fields = array ('email', 'username', 'password', 'password_again', 'first_name', 'last_name');
foreach ($_POST as $key=>$value) {
    if (empty($value) && in_array($key, $required_fields) === true) {
        $errors [] = 'ALL fields MUST be filled out correctly';
        break 1;
    }
}

    if (empty($errors) === true) {
    if (user_exists($_POST['email']) === true) {
        $errors [] = 'Sorry, the email \'' . $_POST['email'] . '\' is already in use.';   
    }
            if (preg_match("/\\s/", $_POST['email']) == true) {
            $errors[] = 'Your email must not contain any spaces';

    }
            if (user_exists($_POST['username']) === true) {
        $errors [] = 'Sorry, the username \'' . $_POST['username'] . '\' is already in use.';   
    }
    if (preg_match("/\\s/", $_POST['username']) == true) {
            $errors[] = 'Your username must not contain any spaces';

    }
    if (strlen($_POST['password']) < 6)  {
    $errors[] = 'Your password must be in between 6-24 characters long';
    }
    if ($_POST['password'] !== $_POST ['password_again']) {
        $errors[] = 'Your passwords did not match';
    }

}
}
?>

这段代码只注册用户,我也想让它登录,你能不能不要给这个差评

4

2 回答 2

1

注册脚本结束

//include your login validation
if(empty($errors)){
   //User->login(); or anything you use for validating logins
}
于 2013-02-24T21:59:01.763 回答
0

要执行登录,您通常需要为用户创建一个 cookie(使用 PHP 的 setcookie 函数)并初始化保存用户数据(如用户名)的会话变量。

此链接将向您展示如何使用 setcookie() http://php.net/setcookie

至于会话变量,可以这样任意设置:

$_SESSION['用户名'] = "管理员";

创建一个安全的登录脚本需要一些时间,所以我建议使用已经存在的表单并根据您的需要调整它们。为了使其真正安全,您需要对数据库输入、安全登录和使用校验和的表单发布进行严格的完整性检查,以及许多其他要考虑的因素。

于 2013-02-24T22:10:21.697 回答