php之用户管理系统的实现!(从简单到复杂)-阿里云开发者社区

开发者社区> 科技小能手> 正文

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

简介:
+关注继续查看

规划图:

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


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
8609 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
10438 0
java:JDBC连接数据库实现用户管理系统
java:JDBC连接数据库实现用户管理系统
19 0
关于《RedHat Linux用户基础》和《RedHat Enterprise Linux系统管理》
这两本书的课后习题书本并没有提供答案,好在红帽官方提供了答案的PDF文件,如果需要的可以去官方下载,地址是http://www.redhat.com.cn/training/academy/,在最下面的红帽学院官方指定教材的下面的两个链接就是。
1242 0
使用OpenApi弹性释放和设置云服务器ECS释放
云服务器ECS的一个重要特性就是按需创建资源。您可以在业务高峰期按需弹性的自定义规则进行资源创建,在完成业务计算的时候释放资源。本篇将提供几个Tips帮助您更加容易和自动化的完成云服务器的释放和弹性设置。
11929 0
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,阿里云优惠总结大概有三种登录方式: 登录到ECS云服务器控制台 在ECS云服务器控制台用户可以更改密码、更换系.
12254 0
23706
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载