Flask 로그 인 등록 항목 의 간단 한 실현
디 렉 터 리 구조
 
 프로필 디자인
/templates/config.py
#       
import pymysql
conn = pymysql.connect(
        host='192.XXX.XXX.XX',
        port=320xx,
        user='root',
        password='123456',
        database='test_XX'
    )
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
{#    <link rel=stylesheet type=text/css href="{{ url_for('static', filename='style.css') }}" rel="external nofollow"  rel="external nofollow" >#}
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet"  type="text/css" href="/static/style.css" rel="external nofollow"  rel="external nofollow"  rel="external nofollow" >
    <title>        </title>
</head>
<body>
    <div>
    <h1>  ,{{ username }},        </h1>
        <a href="{{ url_for('user_login') }}" rel="external nofollow"  rel="external nofollow" >  </a>
        <br/>
    </div>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet"  type="text/css" href="/static/style.css" rel="external nofollow"  rel="external nofollow"  rel="external nofollow" >
{#    <link rel="stylesheet" href="{{ url_for('static', filename='style.css') }}" rel="external nofollow"  rel="external nofollow"  type="text/css">#}
    <title>  </title>
</head>
<body>
    <div>
    <h1>    </h1>
    <!--         form -->
    <form method="POST">
        <input type="text" name="username" placeholder="      " />
        <br/>
        <input type="password" name="password" placeholder="     (  12 )" />
        <br/>
         <!--jinja2   -->
        {% if message %} {{message}} {% endif %}
        <br/>
        <input type="submit" value="  " />
        <input type="reset" value="  " />
        <!--   register   -->
        <a href="{{ url_for('register') }}" rel="external nofollow" >  </a>
    </form>
    </div>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet"  type="text/css" href="/static/style.css" rel="external nofollow"  rel="external nofollow"  rel="external nofollow" >
    <title>  </title>
</head>
<body>
    <div>
    <h1>    </h1>
    <form method="POST">
        <input type="text" name="username" placeholder="      " />
        <br/>
        <input type="password" name="password" placeholder="     (  12 )" />
        <br/>
        <!--jinja2   -->
        {% if message %} {{message}} {% endif %}
        <br/>
        <input type="submit" value="  " />
        <input type="reset" value="  " />
        <a href="{{ url_for('user_login') }}" rel="external nofollow"  rel="external nofollow" >  </a>
    </form>
    </div>
</body>
</html>
from templates.config import conn
cur = conn.cursor()
def is_null(username,password):
	if(username==''or password==''):
		return True
	else:
		return False
def is_existed(username,password):
	sql="SELECT * FROM user WHERE username ='%s' and password ='%s'" %(username,password)
	cur.execute(sql)
	result = cur.fetchall()
	if (len(result) == 0):
		return False
	else:
		return True
def exist_user(username):
	sql = "SELECT * FROM user WHERE username ='%s'" % (username)
	cur.execute(sql)
	result = cur.fetchall()
	if (len(result) == 0):
		return False
	else:
		return True
from templates.config import conn
cur = conn.cursor()
def add_user(username, password):
    # sql commands
    sql = "INSERT INTO user(username, password) VALUES ('%s','%s')" %(username, password)
    # execute(sql)
    cur.execute(sql)
    # commit
    conn.commit()  #          ,  commit()
    conn.close()
app.py
from flask import Flask,render_template
from flask import redirect
from flask import url_for
from flask import request
from model.check_login import is_existed,exist_user,is_null
from model.check_regist import add_user
app = Flask(__name__)
@app.route('/')
def index():
    return redirect( url_for('user_login') )
@app.route('/user_login',methods=['GET','POST'])
def user_login():
    if request.method=='POST':  #         POST  
        username = request.form['username']
        password = request.form['password']
        if is_null(username,password):
            login_massage = "    :        "
            return render_template('login.html', message=login_massage)
        elif is_existed(username, password):
            return render_template('index.html', username=username)
        elif exist_user(username):
            login_massage = "  :    ,       "
            return render_template('login.html', message=login_massage)
        else:
            login_massage = "      "
            return render_template('login.html', message=login_massage)
    return render_template('login.html')
@app.route("/regiser",methods=["GET", 'POST'])
def register():
    if request.method == 'POST':
        username = request.form['username']
        password = request.form['password']
        if is_null(username,password):
            login_massage = "    :        "
            return render_template('register.html', message=login_massage)
        elif exist_user(username):
            return redirect(url_for('user_login'))
        else:
            add_user(request.form['username'], request.form['password'] )
            return render_template('index.html', username=username)
    return render_template('register.html')
if __name__=="__main__":
    app.run()
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
GCE로 Flask를 이동!GCE에서 우선 Flask를 사용하여 웹 페이지를 게시하는 단계입니다. 우선이므로, 움직이면 좋다고 하는 느낌입니다. 우선 공개하므로 최소 사양으로 갑니다. 다음 구성으로 인스턴스를 만듭니다. 이름 gce-flask...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.