django实现密码加密的注册(数据对象插入)
在 django实现密码非加密的注册(数据对象插入)的基础上,我们对视图和注册页面进行了简单修改
视图
from django.shortcuts import render,redirect,render_to_response
from django.http import HttpResponse
from .models import *
from hashlib import sha1
# Create your views here.
def index(request):
return render(request,'index.html')
def register(request):
return render(request,'register.html')
def adduser(requset):
uname = requset.POST['user']
upwd = requset.POST['pwd']
ucpwd = requset.POST['cpwd']
uemail = requset.POST['email']
#密码加密
#构造对象
s1=sha1()
s1.update(upwd.encode("utf-8"))
upwd2 = s1.hexdigest()
if upwd != ucpwd:
return redirect('/register/')
try:
usr = userinfo()
usr.username=uname
usr.password=upwd2
usr.email=uemail
usr.save()
#userinfo.objects.get_or_create(username=uname,password=upwd)
msg='user create success!'
all = userinfo.objects.all()
return render(requset, 'info.html', {'msg': msg, 'all': all})
except Exception as e:
#return render(requset,'info.html',{'msg':e,'all':all})
return HttpResponse({'<html>数据重复了<a href="/"><h2>返回</h2></a></html>'},e)
注册页register.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Register</title>
</head>
<body>
<form action="/adduser/" method="POST">
{% csrf_token %}
账号: <input type="text" name="user"><br>
密码: <input type="password" name="pwd"><br>
确认密码:<input type="password" name="cpwd"><br>
邮箱: <input type="email" name="email"><br>
<input type="submit" value="提交">
</form>
</body>
</html>
注册页截图

后台截图

加密实现成功!
django实现密码加密的注册(数据对象插入)的更多相关文章
- django实现密码加密的注册(数据对象插入)-结合forms表单实现表单验证
forms表单 #_*_coding:utf-8_*_ from django import forms class regis(forms.Form): username = forms.CharF ...
- django实现密码非加密的注册(数据对象插入)
数据模型 from django.db import models class userinfo(models.Model): username = models.CharField(max_leng ...
- django简单密码加密和效验
通过django自带的类库,来加密解密很方便,下面来简单介绍下: 导入包: from django.contrib.auth.hashers import make_password, check_p ...
- Django之密码加密
通过django自带的类库,来加密解密很方便,下面来简单介绍下: 导入包: from django.contrib.auth.hashers import make_password, check_p ...
- Django -MD5密码加密与登录
直接贴代码 login_reg.py from django.shortcuts import render, redirect from web.forms.login_reg import Reg ...
- django 自定义 密码加密方式 及自定义验证方式
在django1.6中,默认的加密方式是pbkdf_sha256,具体算法不表,一直以来用django的自带用户验证都十分顺手,但如果需要修改默认加密方式为md5,具体方法为: 在settings.p ...
- Django项目:CRM(客户关系管理系统)--45--37PerfectCRM实现King_admin添加用户时密码加密
#views # ————————02PerfectCRM创建ADMIN页面———————— from django.shortcuts import render # ————————04Perfe ...
- Shiro自定义realm实现密码验证及登录、密码加密注册、修改密码的验证
一:先从登录开始,直接看代码 @RequestMapping(value="dologin",method = {RequestMethod.GET, RequestMethod. ...
- 关于SQL 数据表中的密码加密
首先,都知道一个字节(byte)等于八位二进制数.在数据表中将密码字段设置为binary类型,再结合哈希散列运算可以实现密码加密. 下面介绍下binary 和 varbinary: binary 和 ...
随机推荐
- 由于删除DBF文件报错 —— ORA-01033: ORACLE initialization or shutdown in progress
由于移动或删除DBF文件报错:ORA-01033: ORACLE initialization or shutdown in progress 原因:一般该类故障通常是由于移动文件而影响了数据库日 ...
- Python课程之字典
字典(dict) 一.定义:字典类型在其他语言中又称为map,是一种映射类型,并且{key:value}无序,其关键字必须为不可变类型(如:元组/字符串),在同一个字典中关键字必须互不相同(若出现相同 ...
- Note:pandas时间序列处理
Note 1.Time Series #1 from datetime import datetime now=datetime.now() now.year now.month now.day #2 ...
- POJ训练计划3096_Surprising Strings(STL/map)
解题报告 id=3096">题目传送门 题意: 给一个字符串,要求.对于这个字符串空隔为k取字符对(k=0,1,2,3,4...)要求在同样的空隔取对过程汇总.整个字符串中没有一个同样 ...
- dedecms上传图片相对路径改成绝对路径方法
很多朋友使用dedecms的时候都用了二级域名的功能,所以造成很多文章中图片不显示的问题. 解决方案如下: 1. 进入dede后台"系统"-"系统基本参数"-& ...
- ModelSim 使用笔记1
ModelSim 使用笔记1 ModelSim提供了简单仿真方式,还有一种要建立project,目前这种方式暂时够我用了. 总结了以下,做了一个简单的<modelsim quick star ...
- Spring 注解 @Scheduled(cron = "0 0/10 * * * ? ") 任务调度动态改变时间
不需要重启应用就可以动态的改变Cron表达式的值 import java.util.Date; import java.util.concurrent.Executor; import java.ut ...
- 推送本地文件夹到github
1.首先鼠标右键,Git Init Here将文件夹初始化为仓库 2.打开github桌面版 3.点击添加本地仓库 4.填好summary和description并提交 5.push到自己的githu ...
- PHP预定义常量DIRECTORY_SEPARATOR
PHP预定义常量DIRECTORY_SEPARATOR BY 天涯 · // DIRECTORY_SEPARATOR是一个显示系统分隔符的命令,DIRECTORY_SEPARATOR是PHP的内部常量 ...
- mysql之select into outfile
参见:http://dev.mysql.com/doc/refman/5.1/en/select-into.html 例子: SELECT a,b,a+b INTO OUTFILE '/tmp/res ...