def change_password(request): # 检查用户是否登录 util = Util() username = util.check_user(request) if username == '': uf = LoginForm() return render(request, 'index.html', {'uf': uf, 'error': '请登录后再进入'}) else: count = util.count_cookies(request) # 当前购物车中的商品数量 uf = ChangePasswordForm() user_list = get_object_or_404(User, username=username) # 获取登录的用户信息 if request.method=='POST': uf = ChangePasswordForm(request.POST) if uf.is_valid(): oldpassword = util.md5(request.POST.get('oldpassword','')) # 获取旧密码 newpassword = util.md5(request.POST.get('newpassword','') ) # 获取新密码 checkpassword = util.md5(request.POST.get('checkpassword','')) # 获取确认密码 if oldpassword != user_list.password: return render(request, 'change_password.html', {'uf':uf,'user':username, 'error':'旧密码不正确', 'count':count}) elif newpassword == oldpassword: return render(request, 'change_password.html', {'uf':uf,'user':username, 'error':'新密码不能与旧密码相同', 'count':count}) elif newpassword != checkpassword: return render(request, 'change_password.html', {'uf':uf,'user':username, 'error':'确认密码与新密码不匹配', 'count':count}) else: User.objects.filter(username=username).update(password=newpassword) return render(request, 'change_password.html',{'uf':uf,'user':username, 'error':'密码修改成功', 'count':count}) else: return render(request, 'change_password.html', {'uf':uf,'user':username, 'count':count})
def change_password(request): util = Util() username = util.check_user(request) if username == "": uf = LoginForm() return render(request, "index.html", {'uf': uf, "error": "请登录后再进入"}) else: count = util.cookies_count(request) #获得当前登录用户的用户信息 user_info = get_object_or_404(User, username=username) #如果是提交表单,获取表单信息,并且进行表单信息验证 if request.method == "POST": #获取旧密码 oldpassword = util.md5((request.POST.get("oldpassword", "")).strip()) #获取新密码 newpassword = util.md5((request.POST.get("newpassword", "")).strip()) #获取新密码的确认密码 checkpassword = util.md5((request.POST.get("checkpassword", "")).strip()) #如果旧密码不正确,报错误信息,不允许修改 if oldpassword != user_info.password: return render(request, "change_password.html", { "user": username, "error": "旧密码不正确", "count": count }) #如果新密码与旧密码相同,报错误信息,不允许修改 elif newpassword == oldpassword: return render(request, "change_password.html", { "user": username, "error": "新密码不能与旧密码相同", "count": count }) #如果新密码与新密码的确认密码不匹配,报错误信息,不允许修改 elif newpassword != checkpassword: return render(request, "change_password.html", { "user": username, "error": "确认密码与新密码不匹配", "count": count }) else: #否则修改成功 User.objects.filter(username=username).update( password=newpassword) return render(request, "change_password.html", { "user": username, "error": "密码修改成功", "count": count }) #如果不是提交表单,显示修改密码页面 else: return render(request, "change_password.html", { "user": username, "count": count })
def register(request): util = Util() if request.method == "POST": #判断表单是否提交状态 uf = UserForm(request.POST) #获得表单变量 if uf.is_valid(): #判断表单数据是否正确 #获取表单信息 username = (request.POST.get('username')).strip() #获取用户名信息 password = (request.POST.get('password')).strip() #获取密码信息 #加密password password = util.md5(password) #判断密码长度是否做过50 email = (request.POST.get('email')).strip() #获取Email信息 #查找数据库中是否存在相同用户名 user_list = User.objects.filter(username=username) if user_list: #如果存在,报"用户名已经存在!"错误信息并且回到注册页面 uf = UserForm() return render(request, 'register.html', { 'uf': uf, "error": "用户名已经存在!" }) else: #否则将表单写入数据库 user = User() user.username = username user.password = password user.email = email user.save() #返回登录页面 uf = LoginForm() return render(request, 'index.html', {'uf': uf}) else: #如果不是表单提交状态,显示表单信息 uf = UserForm() return render(request, 'register.html', {'uf': uf})
def login_action(request): util = Util() if request.method == "POST": uf = LoginForm(request.POST) if uf.is_valid(): # 寻找名为 "username"和"password"的POST参数,而且如果参数没有提交,返回一个空的字符串。 username = (request.POST.get('username')).strip() password = (request.POST.get('password')).strip() #加密password password = util.md5(password) # 判断输入数据是否为空 if username == '' or password == '': return render(request, "index.html", { 'uf': uf, "error": "用户名和密码不能为空" }) else: # 判断用户名和密码是否准确 user = User.objects.filter(username=username, password=password) if user: response = HttpResponseRedirect( '/goods_view/') # 登录成功跳转查看商品信息 request.session['username'] = username # 将session 信息写到服务器 return response else: return render(request, "index.html", { 'uf': uf, "error": "用户名或者密码错误" }) else: uf = LoginForm() return render(request, 'index.html', {'uf': uf})
def login_action(request): util = Util() if request.method=="POST": uf = LoginForm(request.POST) if uf.is_valid(): username = request.POST.get('username','') password = request.POST.get('password','') password = util.md5(password) if username=='' or password=='': render(request, 'index.html', {'uf':uf, 'error':'用户名或者密码不能为空'}) else: is_usr = User.objects.filter(username=username) if not is_usr : return render(request, 'index.html',{'uf':uf, 'error': '用户名不存在,请注册'}) else: user_info = User.objects.filter(username=username, password=password) if user_info: request.session['username'] = username return redirect('/goods_view/') # return render(request, 'index.html', {'uf': uf, 'error': '查看购物车'}) else: return render(request, 'index.html', {'uf': uf, 'error': '用户名或密码错误'}) else: uf = LoginForm() return render(request, 'index.html',{'uf':uf})
def register(request): util = Util() if request.method=='POST': uf = UserForm(request.POST) if uf.is_valid(): # 获取表单信息 username = request.POST.get('username','') # 获取用户名 password = request.POST.get('password','') #获取密码 email = request.POST.get('email','') password = util.md5(password) user_list = User.objects.filter(username=username) if user_list: # 当前用户存在 return render(request,'register.html', {'uf':uf, 'error':'用户名已存在!'}) else: User.objects.create(username=username,password=password,email=email) # 返回登录界面 uf = LoginForm() return render(request, 'index.html', {'uf': uf, 'error':'用户名已注册!请登录'}) else: uf = UserForm() return render(request,'register.html', {'uf':uf})