php之用户管理系统的实现!(从简单到复杂)

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介:

规划图:

image

一、数据库的设计:


数据库的创建: create database empmanage;


管理员表Admin

create table admin(

Adm_id int primary key,

Adm_name varchar(32) not null,

Adm_password varchar(128) not null );


雇员表:emp

create table emp(

Emp_id int primary key auto_increment,

Emp_name varchar(64) not null,

Emp_grade tinyint,

Emp_email varchar(64) not null,

Emp_salary float

);



添加点数据表里:


insert into emp (Emp_name,Emp_grade,Emp_email,Emp_salary) values ('jiping',1,'gjp@lonlife.net',3000);

添加多条,作为后面的分页使用!


insert into admin values(100,'admin',md5('admin'));

image

二、登陆的实现:


1种方法:简单的实现,不到数据库验证!

第一个界面:login.php

<html>

<head>

<metahttp-equiv="content-type"content="text/html;charset=utf-8">

</head>

<h1>管理员登陆系统</h1>

<formaction="loginprocess.php"method="post">

<table>

<tr><td>用户id</td><td><inputtype="text"name="id"/></td></tr>

<tr><td>&nbsp;</td><td><inputtype="password"name="password"/></td></tr>

<tr>

<td><inputtype="submit"value="用户登录"/></td>

<td><inputtype="reset"value="重新填写"/></td>

</tr>

</table>

</form>

<?php

if(!empty($_GET['errno'])){

$errno=$_GET['errno'];

if($errno=='1'){

echo "<br/><font color='red' size='3'>你的用户名和密码有误";

}

}

?>

</html>

第二个界面:loginprocess.php

<?php

//接收用户的数据

$id=$_POST['id'];

$password=$_POST['password'];

if($id=="100" && $password=="123"){

//合法:跳转到empManage.php

header("Location: empManage.php");

exit();

}else {

header("Location: login.php?errno=1");

}

第三个界面:empManage.php

<?php

echo "登录成功";

测试结果:

登陆成功的话:

image

image

故意输错,在下面出现提示!

image

第2种方法:到数据库验证:

image

2种方法的实现:loginprocess.php

<?php

//接收用户的数据

$id=$_POST['id'];

$password=$_POST['password'];

//2.到数据库进行验证

$conn=mysql_connect("localhost","root","123456");

if(!$conn)

{

die("连接失败".mysql_errno());

}

mysql_query("set names utf8",$conn) or die(mysql_errno());

mysql_select_db("empmanage",$conn) ordie(mysql_errno());

$sql="select Adm_password from admin where Adm_id=$id";

$res=mysql_query($sql,$conn);

if($row=mysql_fetch_assoc($res))

{

//查询到id,下面要比对密码

if($row['Adm_password']==md5($password))

{

header("Location: empManage.php");

exit();

}

}

header("Location: login.php?errno=1");

exit();

//关闭资源

mysql_free_result($res);

mysql_close($conn);


测试结果:

先看下数据库中的管理员表:

image

image

image


三、如何出现,欢迎某个用户登录的界面!


实现方法,用Get 方式传递

(注意:数据库的选取字段)loginprocess.php

$sql="select Adm_password,Adm_name from admin where Adm_id=$id";

$res=mysql_query($sql,$conn);

if($row=mysql_fetch_assoc($res))

//查询到id,下面要比对密码

if($row['Adm_password']==md5($password))

{$name=$row['Adm_name'];

header("Location: empManage.php?name=$name");

exit();

}

}

empManage.php

<?php

echo "欢迎".$_GET['name']."登录成功";

image


四、现在实现:整体设计

image

这里的empMain.php empManage.php来代替

<html>

<head>

<metahttp-equiv="content-type"content="text/html;charset=utf-8">

</head>

<?php

echo "欢迎".$_GET['name']."登录成功";

echo "<br/><a href='login.php'>返回登陆界面";

?>

<h1>主界面</h1>

<ahref='emplist.php'>管理用户</a><br/>

<ahref='#'>添加用户</a><br/>

<ahref='#'>查询用户</a><br/>

<ahref='#'>退出系统</a><br/>

</html>

image

image

image

image

image

image

image

Emplist.php 页面代码

<html>

<head>

<metahttp-equiv="content-type"content="text/html charset=utf-8">

</head>

<title>雇员信息列表</title>

<?php

//显示所有用户的信息(表格)查询数据,在数据库

$conn=mysql_connect("localhost","root","123456");

if(!$conn)

{

die("连接失败".mysql_errno());

}

mysql_query("set names utf8",$conn) or die(mysql_errno());

mysql_select_db("empmanage",$conn) ordie(mysql_errno());

$pageSize=3;

$rowCount=0;

$pageNow=1;//如果没有传送这个参数的话,默认值为1

if(!empty($_GET['pageNow']))

$pageNow=$_GET['pageNow'];}

$pageCount=0;

$sql="select count(Emp_id) from emp";

$res1=mysql_query($sql);

if($row=mysql_fetch_row($res1))

{$rowCount=$row[0];

}

$pageCount=ceil($rowCount/$pageSize);

/*if($rowCount%$pagesize==0){

$pageCount=$rowCount/$pagesize;

}else{

$pageCount=ceil($rowCount/$pagesize);

}*/

$sql="select * fromemp limit ".($pageNow-1)*$pageSize.",$pageSize";

$res=mysql_query($sql,$conn);

echo "<table border='1px' bordercolor='green' cellspacing='0px' ;";

echo "<tr><th>Emp_id</th><th>Emp_name</th><th>Emp_grade</th><th>Emp_email</th><th>Emp_salary</th><th>修改用户</th><th>删除用户</th></tr>";

//循环显示用户的信息

while($row=mysql_fetch_assoc($res))

{

echo"<tr><td>{$row['Emp_id']}</td><td>{$row['Emp_name']}</td><td>{$row['Emp_grade']}</td><td>{$row['Emp_email']}</td><td>{$row['Emp_salary']}</td>".

"<td><a href='#'>修改用户</td><td><a href='#'>删除用户</td></tr>";

}

echo "<h1>雇员信息列表</h1>";

echo "</table>";

//打印出页面的超链接

for($i=1;$i<=$pageCount;$i++)

{echo "<a href='emplist.php?pageNow=$i'>$i$nbsp ";

}

mysql_free_result($res);

mysql_close($conn);

?>

</html>

image


参考传智播客,做的笔记及其测试!

后面会有mvc的实现模式!(敬请关注!!!)




本文转自 gjp0731 51CTO博客,原文链接:http://blog.51cto.com/guojiping/1350962


相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
1月前
|
API PHP
2025宝塔API一键建站系统PHP源码
2025宝塔API一键建站系统PHP源码
139 90
|
2月前
|
前端开发 关系型数据库 MySQL
PHP外链网盘系统网站源码
> 本文将详细介绍如何从零构建一个基于PHP和MySQL的文件管理系统,分解项目代码并剖析每个模块的功能。我们将以`index.php`、`config.php`和`api.php`这三个核心文件为例,详细展示如何设计文件列表、数据库配置和文件上传接口,从而实现一个完整的文件管理系统。该文章可以作为学术研究和代码实现的参考。
190 98
|
1月前
|
关系型数据库 MySQL PHP
免登录游客卡密发放系统PHP网站源码
这是一个简单易用的卡密验证系统,主要功能包括: 卡密管理和验证,多模板支持,响应式设计,验证码保护,防刷机制,简洁的用户界面, 支持自定义模板,移动端优化,安全性保护,易于部署和维护。
183 77
|
9天前
|
PHP
2025简约的打赏系统PHP网站源码
2025简约的打赏系统PHP网站源码
43 20
|
24天前
|
小程序 前端开发 关系型数据库
基于Uniapp+php校园小程序,校园圈子论坛系统功能,校园跑腿二手交流功能设计
校园圈子论坛及综合服务平台集成了校园跑腿、兼职信息、外卖团购、闲置交换、租赁服务、表白墙等多功能模块,提供一站式校园生活解决方案。系统采用uniapp前端和PHP后端开发,支持多城市、多学校切换,配备分站式后台管理,确保稳定性和安全性。通过融云IM SDK实现即时通讯功能,增强用户互动与粘性。适用于大学校园、城市及社区圈子,满足多样化需求,提升便捷体验。
|
2月前
|
Linux PHP 数据安全/隐私保护
2024授权加密系统PHP网站源码
2024授权加密系统PHP网站源码
129 58
|
8天前
|
监控 关系型数据库 MySQL
【01】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-硬件设备实时监控系统运营版发布-本产品基于企业级开源项目Zabbix深度二开-分步骤实现预计10篇合集-自营版
【01】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-硬件设备实时监控系统运营版发布-本产品基于企业级开源项目Zabbix深度二开-分步骤实现预计10篇合集-自营版
18 0
|
2月前
|
前端开发 PHP 数据安全/隐私保护
知识付费系统源码 PHP
在数字经济背景下,知识付费成为新兴领域,尤其在线教育平台的兴起,使更多教育者通过知识付费系统销售课程,实现数字化转型与收入提升。开发此类平台需考虑众多技术细节和业务需求,如使用PHP语言实现支付功能,确保安全性、性能和可扩展性,选择合适的技术方案至关重要。
72 4
知识付费系统源码 PHP
|
2月前
|
移动开发 小程序 前端开发
使用php开发圈子系统特点,如何获取圈子系统源码,社交圈子运营以及圈子系统的功能特点,圈子系统,允许二开,免费源码,APP 小程序 H5
开发一个圈子系统(也称为社交网络或社群系统)可以是一个复杂但非常有趣的项目。以下是一些关键特点和步骤,帮助你理解如何开发、获取源码以及运营一个圈子系统。
167 4
|
3月前
|
关系型数据库 MySQL PHP
骗子曝光系统网站PHP源码
骗子曝光系统网站PHP源码 PHP 7.0+ Mysql 5.6+ 上传访问域名/install安装
91 2

热门文章

最新文章