zoukankan      html  css  js  c++  java
  • PHP练习项目笔记之COOKIES

    主要是在登录和退出的时候,设置cookies。来保存登录和安全退出

    1:在登录页面设置

    //设置cookies的值
    _setcookies($_rows['tg_username'], $_rows['tg_uniqid'],$_clean['time']);
    _location(null,'index.php');

    第二步:生成cookie,

    /**
     * _setcookies
     * @param unknown $_username
     * @param unknown $_uniqid
     */
    function _setcookies($_username,$_uniqid,$_time){
        setcookie('username',$_username);
        setcookie('uniqid',$_uniqid);
        switch ($_time) {
            case '0' : // 设置浏览器进程
                setcookie ( 'username', $_username );
                setcookie ( 'uniqid', $_uniqid );
                break;
            case '1' : // 一天的进程
                setcookie ( 'username', $_username, $_time () + 86400 );
                setcookie ( 'uniqid', $_uniqid, $_time () + 86400 );
                break;
            case '2' : // 一周的进程
                setcookie ( 'username', $_username, $_time () + 604800 );
                setcookie ( 'uniqid', $_uniqid, $_time () + 604800 );
                break;
            case '0' : // 一个月的进程
                setcookie ( 'username', $_username, $_time () + 2592000 );
                setcookie ( 'uniqid', $_uniqid, $_time () + 2592000 );
                break;
        }
    }

    第三步:登录状态中设置

    //登录的情况,就是防止登陆后通过在浏览器中直接连接再次登录
    function _login_state(){
        if (!isset($_COOKIE['username'])) {
            _alert_back("登录状态无法就行本操作!");
        }
    }
    //删除cookies
    function _unsetcookies(){
        setcookie('username','',time()-1);
        setcookie('uniqid','',time()-1);
        _session_destroy();//删除session
        _location(null,'index.php'); //做跳转
    }

    第四步在登录页面和退出页面加上

    //登录状态
        _login_state();

     显示数据的二个方法:在数据配置文件中配置,我的是mysql.func.php

    /**
     * _fetch_array 只能获取一条数据组
     * @param $_sql
     */
    
    function _fetch_array($_sql) {
        return mysql_fetch_array(_query($_sql),MYSQL_ASSOC);
    }
    /**
     * _fetch_array_list可以返回指定数据集的所有数据
     * @param unknown $_result
     * @return multitype:
     */
    function _fetch_array_list($_result){
        return mysql_fetch_array($_result,MYSQL_ASSOC);
    }

    最后在页面中赋值

    //从数据库里提取数据获取结果集
    //我们必须每次重新读取结果集,而不是从新去执行SQL语句。
    $_result = _query("SELECT tg_username,tg_sex,tg_face FROM tg_user ORDER BY tg_reg_time DESC");
    
    <?php while (!!$_rows = _fetch_array_list($_result)) {?>
        <dl>
            <dd class="user"><?php echo $_rows['tg_username']?><?php echo $_rows['tg_sex']?></dd>
            <dt><img src="<?php echo $_rows['tg_face']?>" alt="" /></dt>
  • 相关阅读:
    SpringBoot2.0 整合 QuartJob ,实现定时器实时管理
    SpringBoot2.0 整合 Swagger2 ,构建接口管理界面
    SpringBoot 2.0 整合sharding-jdbc中间件,实现数据分库分表
    基于 CODING 轻松搞定持续集成
    CODING 受邀参与 DevOps 标准体系之系统和工具&技术运营标准技术专家研讨会
    CODING 受邀参加《腾讯全球数字生态大会》
    CODING 告诉你硅谷的研发项目管理之道系列(6)
    CODING 告诉你硅谷的研发项目管理之道(3)
    CODING 告诉你硅谷项目经理的项目管理之道(2)
    CODING 签约天津大学,助力高校“产学”接轨
  • 原文地址:https://www.cnblogs.com/Rollins/p/4675711.html
Copyright © 2011-2022 走看看