tornado注册功能与mysql连用--案例3

tornado使用简单注册功能,案例如下

步骤一,新建表:

新建一个库,库中新建一个表 ,表结构如下

 步骤二,源码实现

html 源码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>注册页面</title>
</head>
<body>

 <form action="/register/" method="post" >

        用户名:<input  type="text"  name="username" />
        密码 :<input  type="password" name="password">
        <input value="注册" type="submit">
    </form>


</body>
</html>

  页面

# -*- coding:utf-8 -*-
#@Time : 2020/9/18 20:52
#@Author: 张君
#@File : register.py

import  tornado.web
import  tornado.ioloop
import MySQLdb
import pymysql
#建立连接
db =  pymysql.Connection(host='127.0.0.1', database='juntest', user='root', password='123456',charset='utf8')

class RegisterHandle(tornado.web.RequestHandler):
    """
    以下是实现注册功能
    """

    def initialize(self, db):
        self.db = db
    def get(self,*args,**kwargs):
        print("进入注册页面")
        #转到注册页面
        self.render('templates/register.html')
        #self.write("注册成功")

        
    def post(self,*args,**kwargs):
        print("post请求")
        username=self.get_argument('username')
        password=self.get_argument('password')
        try:
            cusore = db.cursor()
            cusore.execute("insert   into register(id, username, password) values(null, %s, %s)",(username,password))
            db.commit()
        except:
            print("error了")
            #数据表要回滚
            db.rollback()
            self.render('/register/')

app=tornado.web.Application([
    (r'^/register/',RegisterHandle,dict(db=db))
])

#可以指定IP地址
app.listen(8888)

tornado.ioloop.IOLoop.instance().start()

  步骤三:页面访问,用户名为ooo,密码111

 

步骤4:查看数据库数据,已经写入数据库中了

原文地址:https://www.cnblogs.com/chongyou/p/13701210.html