Python实现注册登录系统

yipeiwu_com6年前Python基础

  表单在网页中主要负责数据采集功能。一个表单有三个基本组成部分: 表单标签:这里面包含了处理表单数据所用CGI程序的URL以及数据提交到服务器的方法。 表单域:包含了文本框、密码框、隐藏域、多行文本框、复选框、单选框、下拉选择框和文件上传框等。 表单按钮:包括提交按钮、复位按钮和一般按钮;用于将数据传送到服务器上的CGI脚本或者取消输入,还可以用表单按钮来控制其他定义了处理脚本的处理工作。而在HTML里面,在地址栏输入一个URL然后打开,这样发送的是一个get请求,若是要使用POST请求,就需要使用表单了。

HTML中的表单就是由form的标签来声明的,举个栗子:

<form action="login" method="post"> 
 <label>username:</label> 
 <input type="text" name="username"><br /> 
 <label>password:</label> 
 <input type="password" name="password"><br /> 
 <input type="submit" name="submit"> 
<form> 

        上面代码中,由form标签包含的部分便是表单的内容,其中关注其中的input部分,这个表单中有三个input,一个是text类型的,代表普通的文本输入,一个是password类型的,代表密码输入,一个是submit类型的,是一个提交的按钮;form标签定义了两个属性,一个是action,代表这个表单提交的路径,一个是method,代表这个表单提交的方法,缺省为GET。接下来详细说明一下上述例子的具体过程,当用户点下submit的按钮的时候,这时候浏览器就向action的路径发送了一个POST请求,请求的内容是下面这个样子的

data = { 
 'username':'XXXXXXXX', 
 'password':'XXXXXXXX' 
} 

         就是将各个除了submit之外的input的name作为key值,实际填写的数据作为value值作为数据包,发送了一个POST请求,当然,如果吧method改为get的话,那么发送的就是GET请求了。接下来,服务器所接收到的的请求数据就跟从客户端程序那边发过来的数据是一样的了,接下来就是根据发送过来的数据,做对应的处理然后返回了。

        有了上述知识之后,我们就开始做一个简单的注册登录系统。我们做的注册登录系统是有注册功能和登录功能,注册后服务器将注册信息存储到本地,登录时验证注册消息是否正确。web.py里面有一些template里面已经有了一些支持,具体代码如下:

# -*- coding: cp936 -*- 
import web 
import os 
 
urls = ( 
 '/', 'hello', 
 '/login', 'login', 
 '/regist', 'regist' 
) 
app = web.application(urls, globals()) 
class hello: 
 def __init__(self): 
  self.render = web.template.render('templates/') 
 def GET(self): 
  return self.render.form() 
 
 
class login: 
 def POST(self): 
  para = web.input() 
  username = para['username'] 
  password = para['password'] 
 
  #TODO:... 
  #if authenticate(username,password): 
   #return render.hello(username) 
  return 'hello world' 
 
class regist: 
 def GET(self): 
  return 'hello world' 
  #return self.render.form() 
 def POST(self): 
  para = web.input() 
  username = para['username'] 
  password = para['password'] 
 
  #TODO:... 
  return 'hello world' 
 
if __name__ == '__main__': 
 app.run() 

       运行效果如下挫图:想要自己搞得美观一点,可以自己找一些相关资料!这个实现的就是输入密码,返回值。你可以看到没有本地保存,是的,这就是给你在TODO那里留的坑!然后密码匹配什么的把上面的login类那里的注释去掉即可!


       随便输入用户名密码可得:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

nginx+uwsgi+django环境搭建的方法步骤

环境搭建 1.安装uwsgi、nginx和django apt install nginx pip install uwsgi pip install django 2.测试...

django框架中ajax的使用及避开CSRF 验证的方式详解

django框架中ajax的使用及避开CSRF 验证的方式详解

本文实例讲述了django框架中ajax的使用及避开CSRF 验证的方式。分享给大家供大家参考,具体如下: ajax(Asynchronous Javascript And Xml) 异...

Python3 max()函数基础用法

描述 max() 方法返回给定参数的最大值,参数可以为序列。 语法 以下是 max() 方法的语法: max( x, y, z, .... ) 参数 x -- 数值表...

python版简单工厂模式

python版简单工厂模式

什么是简单工厂模式 工厂模式有一种非常形象的描述,建立对象的类就如一个工厂,而需要被建立的对象就是一个个产品;在工厂中加工产品,使用产品的人,不用在乎产品是如何生产出来的。从软件开发的角...

PyCharm设置每行最大长度限制的方法

PyCharm设置每行最大长度限制的方法

编写Python代码,大家都需要遵循PEP8,因此在pycharm中,如何设置每行最大长度限制,成为了一个小的知识盲点,在这里做一下记录,方便以后查看。 File→Settings→Co...