首页 > 编程地带 > PHP-管理session

PHP-管理session

2007年11月7日 发表评论 阅读评论

一、认识session
  session的汉语意思就是“会话”,web系统中是指用户和系统的会话,具体兼容性用户在浏览web系统时,从进入网站到浏览器关闭所经过的这段时间。在session中注册的变量可以在这段时间内保留其值,并可在各个页面使用,因为这种特点,session常用于用户在页面之间参数的传递、用户身份认证、记录程序状态等。
    session的工作方式如下:
    1、当一个session第一次被启用时,一个惟一的标识将被存放于本地的cookie中。
    2、首先,使用session_start()函数,PHP从session仓库中加载已存储的session变量。
    3、在执行PHP脚本时,通过使用session_register()函数注册session变量。
    4、当PHP脚本程序结束时,未被销毁的session变量会自动被保存在本地一事实上路径下的session库中,这个路径可以在PHP。INI文件中的session.save_path指定,下次浏览网页时可以通过加载使用。
    
二、注册session变量
    [codes=php]
      //装载session,一事实上要放在首行
            $session_var1=”woyigui's blog”;
        session_register(“session_var1”); //注册变量,不用加$符号
        if(session_is_registered(“session_var1”))
            echo “session_var1变量已经注册!”;
        else
            echo “session_var1变量没有注册!”;
            echo $session_var1;
    ?>[/codes]
    
三、使用session变量
    [codes=php]
          session_start();
      echo “
$_SESSION[session_var1]
“;
    ?>[/codes]
    
    
四、注销session变量
    [codes=php]
      //装载session,一事实上要放在首行
            $session_var1=”woyigui's blog”;
        session_register(“session_var1”); //注册变量,不用加$符号
        if(session_is_registered(“session_var1”))
            echo “session_var1变量已经注册!”;
        else
            echo “session_var1变量没有注册!”;
            echo $session_var1;
        session_unregister(“session_var1”); //注销变量
    ?>[/codes]
    
    
    
五、验证用户身份
    在WEB系统中,必须保证用户不能通过直接在浏览器中输入URL进入必须登陆才能访问到的网页,这时就需要在每个网页中进行身份验证,可以使用session来完成这个功能。系统一般在登陆页面进行用户登陆。
    [codes=php]
            $is_validate=/validate_user();  //读取验证函数。
        session_register(“is_validate”);
    ?>
    [/codes]
    
然后在系统的其他页面,都要检查用户是否合法。
[codes=php]
    session_start();
    if(isset($_SESSION[is_validate]) && $_SESSION[is_validate]==1)
        echo “欢迎回来!”;
    else
        echo “对不起,请先登陆!”;
?>
[/codes]

在用户退出时,则需要注销session变量
[codes=php]
  session_destroy();
?>
[/codes]

转载请注明:woyigui's blog [http://www.woyigui.cn/]
本文标题:PHP-管理session
本文地址:http://www.woyigui.cn/2007/11/07/php%E7%AE%A1%E7%90%86session/

分类: 编程地带 标签: ,
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.
*