PHP操作MySQL数据库详解(三)

黄舟
发布: 2017-03-25 09:50:57
原创
1962人浏览过

管理员登录后台模块

  实现管理员登录后台模块,主要包括:
1. 数据表的设计
2. 登录流程设计
3. 登录代码
4. 登录检查代码

1. 管理员数据表——007_admin

字段名 解释
id 记录id,自动生成的
username 用户名
password 密码
name 管理员姓名
tel 电话
lastloginip 最后登录IP
lastlogintime 最后登录时间
loginhits 登录总次数
status 账号状态,1启用,0停用
addate 账号创建日期

2.登录流程图

登录流程图

3.登录实现

登录页面 login.php

<!--login.php-->
<!DOCTYPE html>
<html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>用户登录</title>
</head>
<body>
<form name="form1" method="post" action="login_check.php">
<table width="500" border="1" bordercolor="#ccc" rules="all" align="center" cellpadding="5">
    <tr>
        <th colspan="2" bgcolor="#ccc">用户登录</th>
    </tr>
    <tr>
        <td width="80" align="right">用户名:</td>
        <td><input type="text" name="username" /></td>
    </tr>
    <tr>
        <td align="right">密码:</td>
        <td><input type="password" name="password"/></td>
    </tr>
    <tr>
        <td> </td>
        <td>
            <input type="submit" value="登录"/>
            <input type="hidden" name="ac" value="login"/>  <!--隐藏域,向服务器隐式传值,用于表单验证-->
        </td>
    </tr></table></form></body></html>
登录后复制

运行效果

用户登录
  输入账号密码后点击登录,会跳转到登录检查页面(login_check.php)

4. 登录检查页面 login_check.php

<!--login_check.php-->
<?php
//********************用户登录检查**********************
//连接MySQL数据库include "conn.php";
//判断表单是否提交if(isset($_POST['ac']) && $_POST['ac']=='login'){    

    //获取表单提交的数据
    $username = $_POST['username'];    
    $password = md5($_POST['password']);   
     //md5() 对密码进行加密

    //构建要查询的SQL语句
    $sql = "SELECT * FROM 007_admin WHERE username='$username' AND password='$password'";    //执行SQL语句
    $result = mysql_query($sql);    //获取结果集中的记录数
    $records = mysql_num_rows($result);    //判断是否匹配
    if($records){  //匹配
        //获取相关变量信息
        $lastloginip = $_SERVER['REMOTE_ADDR'];        
        $lastlogintime = time();        //构建更新记录的SQL语句
        $sql = "UPDATE 007_admin SET lastloginip='$lastloginip', lastlogintime=$lastlogintime, loginhits=loginhits+1 WHERER username='$username'";       
         //执行SQL语句
        mysql_query($sql);        //跳转到成功页面
        $url = "manage.php";        $message = "用户登录成功!";
        header("location:success.php?url=$url&message=$message");
    }else{  //未匹配
        $message = urlencode("用户名或密码不正确!");
        header("location:error.php?message=$message");
    }

}else{  //如果非法操作
    $message = urlencode("非法操作!"); 
    header("location:error.php?message=$message");
}?>
登录后复制

代码PS:

md5() 函数描述:计算字符串的 MD5 散列值说明:以 32字符十六进制数字形式返回散列值注意:md5的加密算法不再安全了举例:md5(“123456”) =e10adc3949ba59abbe56e057f20f883e$_SERVER[]  描述:获取服务器执行环境信息。$_SERVER[“REMOTE_ADDR”]   //客户端的IP地址$_SERVER[“SERVER_ADDR”]    //服务器端的IP地址

  跳转到登录检查页面后,会把管理员输入的账号密码与数据库中的记录进行匹配,当输入的账号密码正确时(即匹配成功),则跳转到登录成功页面(success.php);否则,匹配不成功,跳转到登录失败页面(error.php)。

立即学习PHP免费学习笔记(深入)”;

库宝AI
库宝AI

库宝AI是一款功能多样的智能伙伴助手,涵盖AI写作辅助、智能设计、图像生成、智能对话等多个方面。

库宝AI 109
查看详情 库宝AI

登录成功页面 success.php

<!--success.php-->
<?php$message=urldecode($_GET["message"]);
$url=trim($_GET["url"]);?>
<!DOCTYPE><html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>操作成功</title>
<style type="text/css">
*{margin:0px;padding:0px;}.box{    
width:450px;   
 border:1px solid #f0f0f0;    
 background:#FFFFCC;    
 margin:100px auto;   
  padding:20px;    
  font-size:14px;   
  line-height:180%;    
  color:#444;}h2{margin-bottom:10px;}
  #time{color:#FF0000;
  }.
  .color2{color:#0099FF;}
  a.a1:link,a.a1:visited{color:#0099FF;text-decoration:none;}
  a.a1:hover{color:#FF0000;text-decoration:underline;}
  </style></head><body><p class="box">
    <h2 align="center">操作成功</h2>
    <p><b>提示:<?php echo $message;?></b></p>
    <p>系统将在 <span id="time">5</span> 秒钟后自动跳转,如果不想等待,请点击 <a class="a1" href="<?php echo $url?>">这里</a> 跳转。</p>
    </p></body></html><script language="javascript">function playSec(num){
    //获取id=time的元素对象
    var time = document.getElementById("time");
    time.innerHTML = num;    if(--num >0)
    {
        window.setTimeout("playSec("+num+")",1000);
    }else
    {
        location.href="<?php echo $url?>";
    }
}
playSec(5);</script>
登录后复制

运行效果

这里写图片描述
  5秒后,跳转到新闻管理页面(manage.php),新闻管理页面在PHP操作MySQL数据库(4)中。

登录失败页面 error.php

  登录失败的代码和登录成功的代码差不多。

运行效果

这里写图片描述
  5秒后,跳转到登录页面(login.php),等待管理员重新输入账号密码。

以上就是PHP操作MySQL数据库详解(三) 的详细内容,更多请关注php中文网其它相关文章!

相关标签:
PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号