当前位置:   article > 正文

PHP --- 登录界面构建与mysql交互_php和mysql做一个登录界面

php和mysql做一个登录界面

登录界面构建与mysql交互

环境准备

win2003server
phpstudy2016
vscode

(1)login.html

  • 利用input表单就可构建简单登录界面
  • <fieldset>标签:框住标签内容
  • <legend>标签:为filedset标签添加标题
  • <label>标签:点击字体,聚焦后面的控件
  • <li>标签:列表标签,ul标签代表着下方li标签将无序显示,ol标签代表有序显示
  • checkbox:复选圆框表单元素
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>1234567</title>
  7. </head>
  8. <body>
  9. <form action="login.php" method="post">
  10. <fieldset>
  11. <legend>用户登录</legend>
  12. <ul>
  13. <li>
  14. <label>用户名:</label>
  15. <input type="text" name="username" id="">
  16. </li>
  17. <li>
  18. <label>密码:</label>
  19. <input type="password" name="password" id="">
  20. </li>
  21. <li>
  22. <label></label>
  23. <input type="checkbox" name="remember" value="yes">7天自动登录
  24. </li>
  25. <li>
  26. <label></label>
  27. <input type="submit" name="login" value="登录">
  28. </li>
  29. </ul>
  30. </fieldset>
  31. </form>
  32. </body>
  33. </html>

(2)login.php

  1. <?php
  2. header('Content-type:text/html;charset=utf-8');
  3. // 开启session
  4. session_start();
  5. // 处理用户登录信息
  6. if (isset($_POST['login'])){
  7. # 接受用户登录信息
  8. $username = trim($_POST['username']);
  9. $password = trim($_POST['password']);
  10. // 判断提交的登录信息
  11. if (($username == '') || ($password == '')){
  12. // 若为空,视为未填写,提示错误,3秒后返回登录界面
  13. header('refresh:3; url=login.html');
  14. echo " 用户名或密码不能为空,系统将在3秒后跳转到登录界面,重新填写登录信息! ";
  15. exit;
  16. }
  17. // 连接数据库
  18. $con = mysqli_connect('localhost','root','123456');
  19. // ip地址 用户名 mysql密码
  20. // 验证数据库连接状态
  21. if(mysqli_errno($con)){
  22. echo "连接失败,请重试".mysqli_error($con);
  23. exit;
  24. }
  25. // 设置解码方式
  26. mysqli_set_charset($con,'utf-8');
  27. // 设置datebase
  28. mysqli_select_db($con,'test');
  29. // 查看传入的用户名、用户密码与数据库中的值是否相同
  30. $sql = "select * from login where username = '$username'and password = '$password'";
  31. // 存放返回的数据
  32. $result = mysqli_query($con,$sql);
  33. // 查看当前的数据有几行
  34. $num = mysqli_num_rows($result);
  35. if (!$num){
  36. # 用户名或密码错误,同空的处理方式
  37. header('refresh:3;url=login.html');
  38. echo "用户名或密码错误,系统将在3秒后跳转到登录界面,请重新填写登录信息!";
  39. exit;
  40. }else{
  41. # 用户名和密码都正确,用户新信息保存到session中
  42. $_SESSION['username'] = $username;
  43. $_SESSION['islogin'] = 1;
  44. // 若勾选7天内自动登录,则将其保存到cookie中并保存7天
  45. if ($_POST['remember'] == 'yes'){
  46. setcookie( 'username' , $username , time() + 7*24*60*60);
  47. setcookie( 'code' ,md5($username.md5($password)), time() + 7*24*60*60);
  48. } else {
  49. // 未勾选则删除cookie
  50. setcookie('username', '', time()-999);
  51. setcookie('code', time()-999);
  52. }
  53. // 处理完附加项后跳转到登录成功的首页
  54. header('location:index1.php');
  55. echo "登录成功";
  56. mysql_close($con);
  57. }
  58. }
  59. ?>

(3)在win2003server端的phpstudy创建数据库

方法一:在phpstudy的界面创建


方法二:命令行创建

(4)检测连接情况

1:正常登录


2:密码错误


3:用户名或密码为空


声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Guff_9hys/article/detail/751430
推荐阅读
相关标签
  

闽ICP备14008679号