配色: 字号:
PHP和MYSQL开发简易交互式站点
2016-12-27 | 阅:  转:  |  分享 
  
管理员权限表
";

echo"
";

while($row=mysql_fetch_row($result))

{

//显示管理员信息并通过超链接调用处理函数

echo"";

echo"";

echo"";

}

echo"

";

//修改添加超连接

echo"
";

//删除超链接

echo"
";

echo"
PHP和MYSQL开发简易交互式站点



目的:使用PHP和MYSQL模拟权限管理系统的实现



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



实现思路



1.在MySQL数据库中建立两张数据表。一张数据表保存用户名和密码,用于登陆验证,另一张保存用户权限等基本信息。

2.提交表单登陆时,先在数据库中查找该用户存不存在,若不存在,报错,存在,则验证密码,密码错误则报错,若密码正确,登陆显示所有存储在数据库中的用户信息和当前登陆用户名。

3.在用户进行添加,删除操作时,先判断权限是否足够,有权限则完成相应操作,修改数据库内容,否则提示没有权限



具体实现



1.登陆页面





">

用户名:

密码:









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



//登陆处理

if(isset($_POST[''submit'']))

{

//用户名输入为空

if($_POST[''user_name'']=='''')

//调用javascript函数动态提醒

echo"dis_alert(\"用户名\",1);";//密码输入为空

if($_POST[''password'']=='''')

//调用javascript函数动态提醒

echo"dis_alert(\"密码\",1);";

//用户名与密码均不为空

$user_name=$_POST[''user_name''];

//链接数据库,从中读出用户名和密码

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

mysql_select_db("linyimin",$db);

$result=mysql_query("selectfromloginwhereuser_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"dis_alert(''密码错误'',3);";

}

//密码正确

else

{

session_unset();

session_start();

$_SESSION[''user_name'']=$_POST[user_name];

header("Location:http://localhost/display.php");

exit;

}

}

//用户输入的用户名不存在,报错

elseif($num==0)

{

//用户名不存在,报错

$user_name=$_POST[''user_name''];

echo"dis_alert(\"$user_name\",2);";

}

mysql_close($db);

}//登陆处理结束



输入错误提醒函数







//登陆错误提醒

functiondis_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);

}

}







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



//获取登陆名

session_start();

$NAME=$_SESSION[''user_name''];

//连接数据库,获取数据并显示

functiondisplay()

{

global$NAME;

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

mysql_select_db("linyimin",$db);

$sql="selectfromadmin_info";

$result=mysql_query($sql);

//显示信息表

echo"当前用户:$NAME";

echo"
";

//添加超链接

echo"
ADDUPDATEDELETE
";

echo"
";

//表头

echo"
姓名权限职务
$row[0]$row[1]$row[2]
";

mysql_close($db);

}



显示效果如下:





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

修改,添加页面





">

姓名:

权限:

职务:









效果如下:





删除页面





"onsubmit="returnconfirm(''请确认删除'');">

姓名:











实现



//调用修改函数

if($_GET[update])

{

modify("update");

}

//调用添加函数

elseif($_GET[add])

{

modify("add");

}

elseif($_GET[delete])

{

modify("delete");

}



modify()函数的实现



//修改数据函数

/

点击修改超链接,跳转到修改页面

表单中,名字项指定要修改记录

权限和职务项为可修改内容

/

functionmodify($operation)

{

if(isset($_POST[''update'']))

{

//有root权限修改,修改

if($operation=="update"&&judge("update"))

{

$user_name=$_POST[user_name];

$sql="UPDATEadmin_infoSETpemission=''$_POST[pemission]'',position=''$_POST[position]''WHEREuser_name=''$user_name''";

mysql_query($sql);

mysql_close($db);

display();

}

//添加

elseif(judge("add")&&$operation=="add")

{

$user_name=$_POST[user_name];

$sql="insertintoadmin_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="deletefromadmin_infowhereuser_name=\"$user_name\"";

mysql_query($sql);

}

}

}



judge()函数的实现



//判断修改用户名是否存在和该用户是否具有权限

functionjudge($operation)

{

global$NAME;

//修改用户名

$user_name=$_POST[''user_name''];

//连接数据库,获取数据

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

mysql_select_db("linyimin",$db);

//该用户是否存在

$sql="selectfromadmin_infowhereuser_name=\"$user_name\"";

$result=mysql_query($sql);

$num=mysql_num_rows($result);

//输入名称不存在

if($num==0&&$operation!="add")

{

$user_name=$_POST[''user_name''];

echo"dis_alert(\"$user_name\",2);";

return0;

}

else

{

//判断有没有权限(只有root权限可以修改)

$sql="selectfromadmin_infowhereuser_name=\"$NAME\"";

$result=mysql_query($sql);

$pemission=mysql_result($result,0,''pemission'');

//没有root权限,报错

if(strcmp($pewww.tt951.commission,"root")!=0)

{

$user_name=$_POST[''user_name''];

echo"dis_alert(\"$user_name\",1);";

return0;

}

else

return1;

}

}



常用技巧记录



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



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



usersession_unset();

session_start();

$_SESSION[''变量名'']="值";



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



session_start();

$NAME=$_SESSION[''变量名''];



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



连接数据库



//连接数据库

$db=mysql_connect("url","用户名","密码");

//选择数据库

mysql_select_db("数据库名称",$db);



查找



$sql="selectfromadmin_infowhere字段名=\"查找值\"";

$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))

{

相关操作;

}



插入



$sql="insertinto数据表(字段1,字段2,字段3)values(''值1'',''值2'',''值3'')";

mysql_query($sql);



删除



$sql="deletefrom数据表where字段名=\"查找值\"";

mysql_query($sql);

//关闭数据库

mysql_close($db);



3.表格提交前提醒







4.在php中调用javascript函数




echo"javascript函数;";

?>



献花(0)
+1
(本文系thedust79首藏)
类似文章 更多
发表评论: