站长天空|站长|服务器|安全|程序|SEO|工具

当前位置: 主页 > 程序语言 > PHP语言 >

PHP+MYSQL会员系统的登陆即权限判断

时间:2010-08-30 18:10来源: 作者:小糊涂神 点击:
包含三个页面,cogfig页面是被包含页面。denglu页面负责提交,session赋值等,denglu_link页面负责权限判断的演示。 本例事先已存在test数据库,user_list表,表中有uid,m_id,username,password四个字段。并且password字段已经经过md5加密,形式是:md5(用

包含三个页面,cogfig页面是被包含页面。denglu页面负责提交,session赋值等,denglu_link页面负责权限判断的演示。

本例事先已存在test数据库,user_list表,表中有uid,m_id,username,password四个字段。并且password字段已经经过md5加密,形式是:md5("用户密码".ALL_PS),即用户输入的密码加常量进行加密。

config.php页面

<?php
//启动session
session_start();
//数据库连接
$conn=mysql_connect('localhost','root','******');
mysql_select_db('test',$conn);
//定义常量
define("ALL_PS","php100");
//判断权限函数
function user_shell($uid,$shell){
   
    $sql="SELECT * FROM `user_list` WHERE `uid` = '$uid'";
    $query=mysql_query($sql);
    $exist=is_array($row=mysql_fetch_array($query));

    $exist2=$exist?$shell==md5($row['username'].$row['password'].ALL_PS):FALSE;
    if($exist2){
        return $row;
   }else{
     echo "你无权限访问该页";
     exit();
}
}

?>

 

denglu.php页面:

<?
include("config.php");

if($_POST['submit']){
   $username=str_replace(" ","",$_POST['username']); //去除空格
   $sql="SELECT * FROM `user_list` WHERE `username` = '$username'";
   $query=mysql_query($sql);
   $exist=is_array($row=mysql_fetch_array($query)); //判断是否存在这样一个用户
   $exist2=$exist?md5($_POST['password'].ALL_PS)==$row['password']:FALSE;//判断密码
   if($exist2){
      $_SESSION['uid']=$row['uid'];                   // session赋值
    $_SESSION['user_shell']=md5($row['username'].$row['password'].ALL_PS);
    echo "登陆成功";
  
   }else{
        echo "不正确的用户名";
        SESSION_DESTROY();
}
}
?>
<form action="" method="post">
用户名:<input type="text" name="username" /><br>
密码:<input type="password" name="password"/><br>
验证码:<input type="code" name="code" size="10"/>
<img src="imgcode.php"><br><br>
<input type="submit" name="submit" value="登陆"/>
</form>
<a href="http://127.0.0.1/test/denglu_link.php">denglu_link</a>

 

denglu_link.php页面:

<?
include("config.php");
$arr=user_shell($_SESSION['uid'],$_SESSION['user_shell']);//以上两句即可对权限进行判断

   echo $arr['username'];
?>
 

(责任编辑:小糊涂神)
顶一下
(1)
100%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
发布者资料
小糊涂神 查看详细资料 发送留言 加为好友 用户等级:注册会员 注册时间:2010-06-07 23:06 最后登录:2013-07-20 08:07
栏目列表
推荐内容