예제 #1
0
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})
예제 #2
0
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
            })
예제 #3
0
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})
예제 #4
0
파일: views.py 프로젝트: shc573/web-ui
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})
예제 #5
0
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})
예제 #6
0
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})