Пример #1
0
def login():
    """Log in a registered user by adding the user id to the session."""
    form = LoginForm(request.form)
    if request.method == "POST":
        if form.validate():
            username = request.form["username"]
            password = request.form["password"]
            db = get_db()
            error = None
            user = db.execute("SELECT * FROM user WHERE username = ?",
                              (username, )).fetchone()

            if user is None:
                error = "Incorrect username."
            elif not check_password_hash(user["password"], password):
                error = "Incorrect password."

            if error is None:
                # store the user id in a new session and return to the index
                session.clear()
                session["user_id"] = user["id"]
                return redirect(url_for("index"))

        if error is not None:
            flash(error)

    return render_template("auth/login.html", form=form)
Пример #2
0
def login():
    form = LoginForm(request.form)
    if request.method == 'POST' and form.validate():
        username = request.form['username']
        password = request.form['password']
        db = get_db()
        error = None

        user = db.execute('SELECT * FROM user WHERE username=?',
                          (username, )).fetchone()

        if user is None:
            error = '用户名不正确'
        elif not check_password_hash(user['password'], password):
            error = '密码不正确'

        if error is None:
            session.clear()
            session['user_id'] = user['id']
            session.permanent = True
            return redirect(url_for('room.index'))

        flash(error)

    return render_template('auth/login.html', form=form)
Пример #3
0
def login():
    form = LoginForm(request.form)
    if request.method == 'POST' and form.validate():
        user = User.select_by_email(form.email.data)
        # emailから取得したUserのパスワードとクライアントが入力したパスワードが一致するか
        if user and user.validate_password(form.password.data):
            login_user(user, remember=True)
            next = request.args.get('next')  # 次のURL
            if not next:
                next = url_for('app.welcome')
            return redirect(next)
    return render_template('login.html', form=form)
Пример #4
0
def login():
    form = LoginForm(request.form)
    if request.method == 'POST' and form.validate():
        email = form.email.data
        password = form.password.data
        user = User.select_user_by_email(email)
        if user and user.validate_password(password):
            login_user(user)
            next = request.args.get('next')
            if not next:
                next = url_for('app.user_page')
            flash('ログインしました!')
            return redirect(next)
    return render_template('login.html', form=form)
Пример #5
0
def login():
    form = LoginForm(request.form)
    if request.method == 'POST' and form.validate():
        user = User.select_user_by_email(form.email.data)
        if user and user.validate_password(form.password.data):
            login_user(user, remember=True)
            next = request.args.get('next')
            if not next:
                next = url_for('app.home')
            return redirect(next)
        elif not user:
            flash('This user does not exist.')
        elif not user.validate_password(form.password.data):
            flash('Your email address or password is not correct.')
    return render_template('login/login.html', form=form)
Пример #6
0
def login():
    form = LoginForm(request.form)
    if request.method == 'POST' and form.validate():
        user = User.select_user_by_email(form.email.data)
        if user and user.is_active and user.validate_password(form.password.data):
            login_user(user, remember=True)
            next = request.args.get('next')
            if not next:
                next = url_for('app.home')
            return redirect(next)
        elif not user:
            flash('存在しないユーザーです')
        elif not user.is_active:
            flash('無効なユーザーです')
        elif not user.validate_password(form.password.data):
            flash('メールアドレスとパスワードの組み合わせが誤っています')
    return render_template('login.html', form=form)