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

yipeiwu_com6年前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程序设计有所帮助。

相关文章

PHP实现邮件群发的源码

复制代码 代码如下: <?php  // 请求 PHPmailer类 文件  require_once("class.phpmailer.php");...

php中照片旋转 (orientation) 问题的正确处理

前言 iPhone和一些数码相机在拍照的时候往往会在图片里面加入很多的照片信息(exif),比如拍照时间、光圈大小、曝光时间、GSP地理信息以及拍摄时相机倾斜状态等等,这些信息往往会提供...

CI框架中site_url()和base_url()的区别

在使用CI框架的使用经常碰到跳转和路径方面的问题,site_url()和base_url()很容易混淆,下面来说说他们的区别! 假如你config文件里面的base_url和index_...

深入解析PHP中的(伪)多线程与多进程

(伪)多线程:借助外力利用WEB服务器本身的多线程来处理,从WEB服务器多次调用我们需要实现多线程的程序。QUOTE:我们知道PHP本身是不支持多线程的, 但是我们的WEB服务器是支持多...

学习php设计模式 php实现原型模式(prototype)

学习php设计模式 php实现原型模式(prototype)

一、意图 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象 二、原型模式结构图 三、原型模式中主要角色 抽象原型(Prototype)角色:声明一个克隆自身的接口 具体原...