ThinkPHP登录注册
1、效果图:
![](https://img-blog.csdnimg.cn/direct/2a8c7178f008484f87910cbfc6d2716a.png)
![](https://img-blog.csdnimg.cn/direct/e472dfccac5d4a92bbd2e90a4988b705.png)
2、源代码及操作步骤
2.1下面是登录页面代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>库存管理系统</title>
<!--bootstrap文件需要自己下载,也可以使用cdn引入-->
<link href="/static/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">
<link href="/static/bootstrap/dist/css/sign-in.css" rel="stylesheet"> <!-- 在public中的static -->
</head>
<style>
body{
display: flex;
background-image: url(/static/image/bg.png);
background-color: #b8e5f8;
background-size: cover;
width: 100%;
height: 100%;
}
</style>
<body class="gray-bg" >
<div class="position-absolute top-50 start-50 translate-middle"
style="display: flex; align-items: center; justify-content: center; height: 200px; width: 1000px;">
<main style=" background-color: #ffffff;border-radius:5px;padding: 1rem;">
<form role="form" action="{:url('login/dologin')}" method="post"><!-- 跳转到login控制器中的dologin方法 -->
<h1 class="h3 mb-3 fw-normal">库存管理系统</h1>
<p>欢迎登录本站(⊙o⊙)</p>
<div class="form-floating">
<input type="text" name="user_name" class="form-control" placeholder="">
<label for="floatingInput">请输入用户名</label>
</div>
<div class="form-floating">
<input type="password" name="user_pwd" class="form-control" id="respwd" placeholder="请输入密码">
<label for="floatingPassword">请输入密码</label>
</div>
<div class="form-check text-start my-3">
<input class="form-check-input" type="checkbox" value="remember-me" id="flexCheckDefault">
<label class="form-check-label" for="flexCheckDefault">
记住密码
</label>
</div>
<!-- 验证码功能 -->
<div class="input-group has-validation">
<input type="text" class="form-control" name="captchaInput" placeholder="验证码" >
<span class="input-group-text" id="inputGroupPrepend"
onclick="document.getElementById('captcha_img').src='{:captcha_src()}'">
<!-- 通过js的点击事件来实现验证码刷新功能 -->
<img src="{:captcha_src()}" alt="captcha" id="captcha_img"/>
</span>
</div>
<button class="btn btn-primary w-100 py-2" type="submit"><strong>登 录</strong></button>
</form>
<a href="{:url('login/toregister')}"> <!-- 跳转到login控制器中的toregister方法,实现页面方法-->
<button class="btn btn-success w-100 py-2"><strong>注 册</strong></button>
</a>
</main>
</div>
<script src="/static/js/jquery-3.5.1.min.js?v=2.1.4"></script>
<script src="/static/bootstrap/dist/js/bootstrap.min.js"></script>
</body>
</html>
2.2下面是注册页面代码:
<!DOCTYPE html>
<html lang="en" data-bs-theme="auto">
<head>
<script src="/static/bootstrap/dist/js/color-modes.js"></script>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>库存管理系统</title>
<link rel="canonical" href="https://getbootstrap.com/docs/5.3/examples/sign-in/">
<link href="/static/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">
<link href="/static/bootstrap/dist/css/sign-in.css" rel="stylesheet">
</head>
<style>
body{
display: flex;
background-image: url(/static/image/bg.png);
background-color: #b8e5f8;
background-size: cover;
width: 100%;
height: 100%;
}
</style>
<body class="gray-bg" >
<div class="position-absolute top-50 start-50 translate-middle"
style="display: flex; align-items: center; justify-content: center; height: 200px; width: 1000px;">
<main style=" background-color: #ffffff;border-radius:5px;padding: 1rem;">
<form role="form" action="{:url('register/doregister')}" method="post">
<h1 class="h3 mb-3 fw-normal">注 册</h1>
<p>欢迎注册本站(⊙o⊙)</p>
<div class="form-floating">
<input type="text" name="resname" class="form-control" placeholder="请输入用户名">
<label for="floatingInput">请输入用户名</label>
</div>
<div class="form-floating">
<input type="password" name="respwd" class="form-control" id="respwd" placeholder="请输入密码">
<label for="floatingPassword">请输入密码</label>
</div>
<div class="form-floating">
<input type="password" name="rrespwd" onblur="checkUserInput()" class="form-control" id="rrespwd" placeholder="请再次输入密码">
<label for="floatingPassword">请再次输入密码</label>
</div>
<!-- 验证码功能 -->
<div class="input-group has-validation">
<input type="text" class="form-control" name="captchaInput" placeholder="验证码" >
<span class="input-group-text" id="inputGroupPrepend"
onclick="document.getElementById('captcha_img').src='{:captcha_src()}'">
<!-- 通过js的点击事件来实现验证码刷新功能 -->
<img src="{:captcha_src()}" alt="captcha" id="captcha_img"/>
</span>
</div>
<button class="btn btn-primary w-100 py-2" type="submit"><strong>注 册</strong></button>
</form>
<a href="{:url('register/tologin')}">
<button class="btn btn-success w-100 py-2"><strong>返 回</strong></button>
</a>
</main>
</div>
<script src="/static/js/jquery-3.5.1.min.js?v=2.1.4"></script>
<script src="/static/bootstrap/dist/js/bootstrap.bundle.min.js"></script>
<script src="/static/bootstrap/dist/js/bootstrap.min.js"></script>
</body>
<script>
function $(id){
return document.getElementById(id)
}
function checkUserInput(){
var checkUserInputValue=$('respwd').value==$('rrespwd').value;
if(checkUserInputValue){
return true;
}else{
alert('两次密码不一致,请重新输入');
}
}
</script>
</html>
2.3注意 bootstrap需要自己下载 或使用 cdn引入