涉及知识:网站搭建、php、sql语句
环境:phpstudy+phpmyadmin4.8.5+apache2.4.39+mysql5.7.26+php7
登录页面思路:浏览器提交用户输入,php调用sql语句比对数据库中是否存在该账号密码信息
注册页面思路:用户输入,浏览器提交用户输入内容,使用insert into语句插入输入内容到数据库中
数据库内设计:
用户列表:
表名:user_list
字段名:id 、 user_id、user_name、user_num、user_pwd、user_sex
登录页面:
效果预览
代码内容:
<?php session_start() ;?><html><head> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"/> <title>登录title> <style>body{ height: 100%; width: 100%; background: url('./_img/1.jpg') no-repeat; background-size: cover; position: absolute; overflow: hidden;}.input_1{ margin-left:77%; margin-top:300px; width:200px; height:30px; line-height:30px;}.input_2{ margin-left:77%; margin-top:15px; width:200px; height:30px; line-height:30px;}.button_1{ margin-left:77%; margin-top:15px; width:203px; height:30px; line-height:30px; display:inline-block;}.button_2{ margin-left:77%; margin-top:15px; width:203px; height:30px; line-height:30px; display:inline-block;}.error{ color:red}style>head><body> <?php function dealInfo($data){ $data = trim($data); $data = htmlspecialchars($data); $data = stripslashes($data); return $data;}$user_id = $user_pwd = "";//信息初始化$user_id_ERROR = $user_pwd_ERROR = "";$can_use = false;//判断输入项是否被使用if ($_SERVER['REQUEST_METHOD']=="POST"){ $can_use = true; //用户id if(empty($_POST['user_id'])) { $can_use = false; $user_id_ERROR = "用户名不能为空"; } else { $user_id = dealInfo($_POST['user_id']); } //用户密码 if(empty($_POST['user_pwd'])) { $can_use = false; $user_pwd_ERROR = "密码不能为空"; } else { $user_pwd = dealInfo($_POST['user_pwd']); }} $db_server = "127.0.0.1"; $db_Username = "SOS"; $db_Passwd = "123456"; $db_name = "www.sos.com"; $conn = mysqli_connect($db_server,$db_Username,$db_Passwd,$db_name); if(!$conn) { echo ("); } if($can_use) { $sql = "SELECT `user_id` FROM `user_list` WHERE user_id='$user_id'"; $result = mysqli_query($conn,$sql); $test = mysqli_fetch_assoc($result); if($test == false) { $user_id_ERROR = "用户名或密码错误"; } else { $sql = "SELECT `user_pwd` FROM `user_list` WHERE user_pwd='$user_pwd'"; $result = mysqli_query($conn,$sql); $test = mysqli_fetch_assoc($result); if($test == false) { $user_pwd_ERROR = "用户名或密码错误"; } else { $_SESSION['user_id']=$user_id; echo "登录成功"; header("location:homepage.php"); } } }?><div> <form method="post" action="<?php echo htmlspecialchars($_SERVER['PHP_SELEF']);?>"> <input class="input_1" type='text' name='user_id' placeholder="用户名" id='para1'/> <?php echo "".$user_id_ERROR."";?><br/> <input class="input_2" type='password' name='user_pwd' title="密码不能少于8位,且必须有数字字母组合" placeholder="密码"/> <?php echo "".$user_pwd_ERROR."";?><br/> <input class="button_1" type="submit" value="登录"> form> <form action="register.php"> <input class="button_2" type="submit" value="注册"> form> <form action="admin.php"> <input class="button_2" type="submit" value="管理员登录"> form>div> body>body>html>
注册页面:
效果预览
代码内容:
<html><head> <meta charset="utf-8"> <title>注册title><style>body{ height: 100%; width: 100%; background: url('./_img/1_WZ.jpg') no-repeat; background-size: cover; position: absolute; overflow: hidden;}.input_1{ margin-left:45%; margin-top:300px; width:200px; height:30px; line-height:30px;}.input_2{ margin-left:45%; margin-top:15px; width:200px; height:30px; line-height:30px;}.div_1{ margin-left:45.5%; margin-top:40px; color:red;}style>head><body> <?php $can_use = false;//判断输入项是否被使用$user_id = $user_name = $user_sex = $user_pwd = "";//信息初始化$user_id_ERROR = $user_name_ERROR = $user_sex_ERROR = $user_pwd_ERROR = "";$user_name_err = $user_id_err = $name_sex_err = $user_pwd_err = false;$user_all = false;function dealInfo($data){ $data = trim($data); $data = htmlspecialchars($data); $data = stripslashes($data); return $data;}if ($_SERVER['REQUEST_METHOD']=="POST"){ $can_use = true; //用户id if(empty($_POST['user_id'])) { $can_use = false; $user_id_ERROR = "用户名不能为空"; } else { if (!preg_match("/^(?=.*?[0-9])(?=.*?[a-z])[0-9a-z]{8,20}$/",$_POST['user_id']))//用户名规则 { $user_id_ERROR = '用户名最少8位,最多20位,由小写字母数字组成'; } else { $user_id_err = true; $user_id = dealInfo($_POST['user_id']); } } //用户姓名 if(empty($_POST['user_name'])) { $can_use = false; $user_name_ERROR = "姓名不能为空"; } else { $user_name = dealInfo($_POST['user_name']); } //用户性别 if(empty($_POST['user_sex'])) { $can_use = false; $user_性别_ERROR = "请选择性别"; } else { $user_sex = dealInfo($_POST['user_sex']); } //用户密码 if(empty($_POST['user_pwd'])) { $can_use = false; $user_pwd_ERROR = "密码不能为空"; } else { if (!preg_match("/^(?=.*?[0-9])(?=.*?[a-z])[0-9a-zA-Z]{8,}$/",$_POST['user_pwd']))//密码规则,密码不能少于8位,且必须有数字字母组合 { $user_pwd_ERROR = '密码不能少于8位,且必须有数字字母组合'; } else { $user_pwd_err = true; $user_pwd = dealInfo($_POST['user_pwd']); } } if ($user_id_err == true and $user_pwd_err == true) { $user_all = true; }}if ($_SERVER['REQUEST_METHOD']=="POST" and $user_all == true ){ $db_server = "127.0.0.1"; $db_Username = "SOS"; $db_Passwd = "123.bmk!!"; $db_name = "www.sos.com"; $conn = mysqli_connect($db_server,$db_Username,$db_Passwd,$db_name); if(!$conn){ echo (");}$sql_query = "SELECT user_id FROM user_list WHERE user_id = '$user_id'";$result = mysqli_query($conn,$sql_query);//无论查找成功与否,都是执行成功,返回结果集$test = mysqli_fetch_assoc($result);//false代表查找失败if ($test != false){ $user_id_ERROR = "该用户名已存在";}else{ $user_id = $_POST['user_id']; $user_name = $_POST['user_name']; $user_sex = $_POST['user_sex']; $user_pwd = $_POST['user_pwd']; $sql = "INSERT INTO user_list(user_id,user_name,user_sex,user_pwd) VALUES('$user_id','$user_name','$user_sex','$user_pwd')"; if(mysqli_query($conn,$sql)) { echo '; } else{ echo '; }}}?><div> <form method="post" action="<?php echo htmlspecialchars($_SERVER['PHP_SELEF']);?>"> <input class="input_1" type='text' name='user_id'placeholder="用户名"/> <?php echo $user_id_ERROR; ?><br/> <input class="input_2" type='text' name='user_name' placeholder="姓名"/> <?php echo $user_name_ERROR; ?><br/> <div class="div_1"> <td>性别:td> <td> <input type="radio" name="user_sex" id="man1" value="boy" /> <label for="man1">男label> <input type="radio" name="user_sex" id="man2" value="girl" /> <label for="man2">女label> td> div> <?php echo $user_sex_ERROR; ?><br/> <input class="input_2" type='password' name='user_pwd' title="密码不能少于8位,且必须有数字字母组合" placeholder="密码"/> <?php echo $user_pwd_ERROR; ?><br/> <input class="input_2" type="submit" value="注册"> <a href="login.php" style="text-decoration: none;"> a> <a href="login.php">注册完成?回去登录!a> form>div>body>html>
如果觉得还不错的话,请大佬点个关注吧!
历史文章:
python实现子域名枚举结果生成报告
python实现反token爆破账号密码