gpt4 book ai didi

PHP MYSQL简易交互式站点开发

转载 作者:qq735679552 更新时间:2022-09-27 22:32:09 25 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章PHP MYSQL简易交互式站点开发由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

目的:使用php和mysql模拟权限管理系统的实现 。

general用户只能查看其他用户信息,不能进行修改,添加,和删除操作,root用户可以完成以上三种操作.

实现思路 。

1.在mysql数据库中建立两张数据表。一张数据表保存用户名和密码,用于登陆验证,另一张保存用户权限等基本信息。 2.提交表单登陆时,先在数据库中查找该用户存不存在,若不存在,报错,存在,则验证密码,密码错误则报错,若密码正确,登陆显示所有存储在数据库中的用户信息和当前登陆用户名。 3.在用户进行添加,删除操作时,先判断权限是否足够,有权限则完成相应操作,修改数据库内容,否则提示没有权限 。

具体实现 。

1.登陆页面 。

?
1
2
3
4
5
6
7
<center>
  <form method= "post" action= "<?php echo $_server['script_name'] ?>" >
  用户名: <input type= "text" name= "user_name" >
  密码: <input type= "text" name= "password" >
  <input type= "submit" name= "submit" value= "登陆" >
  </form>
</center>

效果如下:

PHP MYSQL简易交互式站点开发

2.连接数据库对登陆名和密码进行验证 。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
//登陆处理
  if (isset( $_post [ 'submit' ]))
  {
   // 用户名输入为空
   if ( $_post [ 'user_name' ] == '' )
   // 调用javascript函数动态提醒
   echo "<script type='text/javascript'>dis_alert(\"用户名\",1);</script>" ; // 密码输入为空
   if ( $_post [ 'password' ] == '' )
   // 调用javascript函数动态提醒
   echo "<script type='text/javascript'>dis_alert(\"密码\",1);</script>" ;
   // 用户名与密码均不为空
   $user_name = $_post [ 'user_name' ];
   //链接数据库,从中读出用户名和密码
   $db = mysql_connect( "localhost" , "root" , "123456" );
   mysql_select_db( "linyimin" , $db );
   $result = mysql_query( "select * from login where user_name = '$user_name'" );
   $num = mysql_num_rows( $result );
   //判断用户输入的用户名存在,验证密码
   if ( $num != 0)
   {
   $user_name = mysql_result( $result ,0, 'user_name' );
   $password = mysql_result( $result ,0, 'password' );
   if ( strcmp ( $password , $_post [ 'password' ]) != 0)
   {
    echo "密码错误" ;
    //密码错误,报错
    $password = $_post [ 'password' ];
    echo "<script type='text/javascript'>dis_alert('密码错误',3);</script>" ;
   }
   // 密码正确
   else
   {
    session_unset();
    session_start();
    $_session [ 'user_name' ] = $_post [user_name];
    header( "location:http://localhost/display.php" );
    exit ;
   }
   }
   // 用户输入的用户名不存在,报错
   else if ( $num == 0)
   {
   // 用户名不存在,报错
   $user_name = $_post [ 'user_name' ];
   echo "<script type='text/javascript'>dis_alert(\"$user_name\",2);</script>" ;
   }
   mysql_close( $db );
  } //登陆处理结束

输入错误提醒函数 。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<script type= "text/javascript" >
 
// 登陆错误提醒
function dis_alert(var1, var2)
{
  // 用户名和密码不能为空提醒
  if (var2 == 1)
  {
  alert(var1 + " 不能为空,请重新输入" );
  history.back(-1);
  }
  // 用户名不存在错误提醒
  if (var2 == 2)
  {
  alert( "该用户名 " + var1 + " 不存在,请重新输入" );
  history.back(-1);
  }
  // 密码错误提醒
  if (var2 == 3)
  {
  alert( "密码错误,请重新输入" );
  history.back(-1);
  }
}
 
</script>

错误提醒效果图:

PHP MYSQL简易交互式站点开发

3.成功登陆之后显示数据库中所有用户信息和当前登陆用户名 。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
// 获取登陆名
session_start();
$name = $_session [ 'user_name' ];
// 连接数据库,获取数据并显示
function display()
{
  global $name ;
  $db = mysql_connect( "localhost" , "root" , "123456" );
  mysql_select_db( "linyimin" , $db );
  $sql = "select * from admin_info" ;
  $result = mysql_query( $sql );
  // 显示信息表
  echo "<h3 align=right color=#ffffff> 当前用户:$name</h6>" ;
  echo "<table border = 0 align = center width = 1000></br>" ;
  // 添加超链接
  echo "<tr align = center><th> <a href =\"display.php?add=yes\">add</a></th><br>" ;
  // 修改添加超连接
  echo "<th> <a href =\"display.php?update=yes\">update</a></th><br>" ;
  // 删除超链接
  echo "<th> <a href =\"display.php?delete=yes\">delete</a></th></tr><br>" ;
  echo "</table>" ;
  echo "<table border = 2 align = center width = 1000></br>" ;
  // 表头
  echo "<tr><th colspan=\"3\">管理员权限表</th></tr><br>" ;
  echo "<tr align = center><td>姓名</td><td>权限</td><td>职务</td></tr><br>" ;
  while ( $row = mysql_fetch_row( $result ))
  {
  // 显示管理员信息并通过超链接调用处理函数
  echo "<tr align = center><td>$row[0]</td>" ;
  echo "<td>$row[1]</td>" ;
  echo "<td>$row[2]</td></tr>" ;
  }
  echo "</table>" ;
  mysql_close( $db );
}

显示效果如下:

PHP MYSQL简易交互式站点开发

4.修改,删除,添加操作的实现 。

修改,添加页面 。

?
1
2
3
4
5
6
7
8
<center>
  <form method= "post" action= "<?php echo $_server['url'] ?>" >
  姓名: <input type= "text" name= "user_name" >
  权限: <input type= "text" name= "pemission" >
  职务: <input type= "text" name= "position" >
  <input type= "submit" name= "update" value= "提交" >
  </form>
</center>

效果如下:

PHP MYSQL简易交互式站点开发

删除页面 。

?
1
2
3
4
5
<center>
  <form method= "post" action= "<?php echo $_server['url'] ?>" onsubmit= "return confirm('请确认删除');" >
  姓名: <input type= "text" name= "user_name" >
  <input type= "submit" name= "update" value= "删除" >
</center>

效果图如下:

PHP MYSQL简易交互式站点开发

实现 。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
// 调用修改函数
if ( $_get [update])
{
  modify( "update" );
}
// 调用添加函数
elseif ( $_get [add])
{
  modify( "add" );
}
elseif ( $_get [ delete ])
{
  modify( "delete" );
}

modify()函数的实现 。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
// 修改数据函数
/*
点击修改超链接,跳转到修改页面
表单中,名字项指定要修改记录
权限和职务项为可修改内容
*/
function modify( $operation )
{
  if (isset( $_post [ 'update' ]))
  {
  // 有root权限修改,修改
  if ( $operation == "update" && judge( "update" ))
  {
   $user_name = $_post [user_name];
   $sql = "update admin_info set pemission = '$_post[pemission]', position ='$_post[position]' where user_name = '$user_name'" ;
   mysql_query( $sql );
   mysql_close( $db );
   display();
  }
  // 添加
  elseif (judge( "add" ) && $operation == "add" )
  {
   $user_name = $_post [user_name];
   $sql = "insert into admin_info (user_name, pemission, position) values ('$_post[user_name]','$_post[pemission]','$_post[position]')" ;
   mysql_query( $sql );
   mysql_close( $db );
   display();
  }
  // 删除
  elseif (judge( "delete" ) && $operation == "delete" )
  {
   $user_name = $_post [user_name];
   // 获取确认情况
   $sql = "delete from admin_info where user_name = \"$user_name\"" ;
   mysql_query( $sql );
   }
  }
}

judge()函数的实现 。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
// 判断修改用户名是否存在和该用户是否具有权限
function judge( $operation )
{
  global $name ;
  // 修改用户名
  $user_name = $_post [ 'user_name' ];
  // 连接数据库,获取数据
  $db = mysql_connect( "localhost" , "root" , "123456" );
  mysql_select_db( "linyimin" , $db );
  // 该用户是否存在
  $sql = "select * from admin_info where user_name = \"$user_name\"" ;
  $result = mysql_query( $sql );
  $num = mysql_num_rows( $result );
  // 输入名称不存在
  if ( $num == 0 && $operation != "add" )
  {
   $user_name = $_post [ 'user_name' ];
   echo "<script type='text/javascript'>dis_alert(\"$user_name\",2);</script>" ;
   return 0;
  }
  else
  {
   // 判断有没有权限(只有root权限可以修改)
   $sql = "select * from admin_info where user_name = \"$name\"" ;
   $result = mysql_query( $sql );
   $pemission = mysql_result( $result ,0, 'pemission' );
   // 没有root权限,报错
   if ( strcmp ( $pemission , "root" ) != 0)
   {
   $user_name = $_post [ 'user_name' ];
   echo "<script type='text/javascript'>dis_alert(\"$user_name\",1);</script>" ;
   return 0;
   }
   else
   return 1;
  }
}

常用技巧记录 。

1.利用session实现多个php文件使用同一个变量的方法 。

在定义该变量的文本中打开session,并把值存入session 。

?
1
2
3
usersession_unset();
session_start();
$_session [ '变量名' ] = "值" ;

在使用该变量的文本中打开session并取出该变量 。

?
1
2
session_start();
$name = $_session [ '变量名' ];

2.php连接mysql数据库,并对数据库进行查找,添加,删除操作 。

连接数据库 。

?
1
2
3
4
// 连接数据库
$db = mysql_connect( "url" , "用户名" , "密码" );
// 选择数据库
mysql_select_db( "数据库名称" , $db );

查找 。

?
1
2
3
4
5
6
7
8
9
10
11
12
$sql = "select * from admin_info where 字段名 = \"查找值\"" ;
$result = mysql_query( $sql );
// 对查找返回结果进行操作
// 获取查找返回记录数条数
$num = mysql_num_rows( $result );
// 获取查找结果第一条记录的user_name字段值
$user_name = mysql_result( $result ,0, 'user_name' );
// 逐条取出查询记录
while ( $row = mysql_fetch_row( $result ))
{
  相关操作;
}

插入 。

?
1
2
$sql = "insert into 数据表 (字段1, 字段2, 字段3) values ('值1','值2','值3')" ;
mysql_query( $sql );

删除 。

?
1
2
3
4
$sql = "delete from 数据表 where 字段名 = \"查找值\"" ;
mysql_query( $sql );
// 关闭数据库
mysql_close( $db );

3.表格提交前提醒 。

<form method="post" action="url" onsubmit="return confirm('请确认删除');"> 。

4.在php中调用javascript函数 。

?
1
2
3
<?php
echo "<script type='text/javascript'>javascript函数;</script>" ;
?>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我.

最后此篇关于PHP MYSQL简易交互式站点开发的文章就讲到这里了,如果你想了解更多关于PHP MYSQL简易交互式站点开发的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com