php使用Cookie控制访问授权的方法

yipeiwu_com5年前PHP代码库

本文实例讲述了php使用Cookie控制访问授权的方法。分享给大家供大家参考。具体如下:

复制代码 代码如下:
<?php 
    if(isset($_POST['name'])||isset($_POST['pass'])){ 
        //如果有表单有提交 
        //检测表单中需要的值 
        if(empty($_POST['name'])){ 
            die("请输入用户名!"); 
        } 
        if(empty($_POST['pass'])){ 
            die("请输入密码!"); 
        } 
        //设置数据库变量 
        $host = "localhost"; 
        $user = "root"; 
        $pass = "zq19890319"; 
        $db = "cookie"; 
        //打开连接 
        $connection = mysql_connect($host, $user, $pass) or die("Unable to connect!"); 
        //选择一个数据库 
        mysql_select_db($db) or die("Unable to select database!"); 
        //建立一个查询 
        $query = "SELECT * FROM users WHERE name = '".$_POST['name']."' AND pass = SHA1('".$_POST['pass']."')"; 
        //执行一个查询 
        $result = mysql_query($query) or die("Error in query:$query." . mysql_error()); 
        //是否有记录集返回 
        if(mysql_num_rows($result) == 1){ 
            //如果有一行记录返回 
            //表示验证已经通过 
            //建立一个session,设置一个登陆标记为1,并将当前用户名保存在cookie中 
            session_start(); 
            $_SESSION['auth'] = 1; 
            setcookie("username", $_POST['name'], time()+(84600*30)); 
            echo "用户访问已经授权!"; 
        }else{ 
            echo "错误的用户名或密码!"; 
        } 
        //释放记录集 
        mysql_free_result($result); 
        //关闭数据库 
        mysql_close($connection); 
    } 
    else{ 
        //如果没有表单提交,则显示一个HTML表单 
    ?> 
    <html> 
    <head></head> 
    <body> 
        <center> 
            <form method="post" action=""> 
            用户名<input type="text" name="name" value="<?php echo $_COOKIE['username'];?>" /> 
            <p /> 
            密码<input type="password" name="password" /> 
            <p /> 
            <input type="submit" name="submit" value="登陆" /> 
            </form> 
        </center> 
    </body> 
<?php 
    } 
?>

希望本文所述对大家的php程序设计有所帮助。

相关文章

CodeIgniter php mvc框架 中国网站

我们很高兴的宣布 CodeIgniter 1.6.2 版正式发布。本次发布包括超过 29 个 BUG 修复和&nbs...

PHP缓存机制Output Control详解

在php5.2版本的配置中,默认output_buffering为关闭状态,因此运行下面三行代码将会出现一个警告: Warning: Cannot modify header infor...

解析PHP SPL标准库的用法(遍历目录,查找固定条件的文件)

<?php  class RecursiveFileFilterIterator extends FilterIterator {    &...

php结合web uploader插件实现分片上传文件

最近研究了下大文件上传的方法,找到了webuploader js 插件进行大文件上传,大家也可以参考这篇文章进行学习:《Web Uploader文件上传插件使用详解》 使用  ...

PHP一些有意思的小区别

单引号'和双引号"的区别:  首先是单引号要比双引号执行效率要高,因为双引号会对内容进行预处理。  例如:'$value' 输出字符 $value...