当前位置: 网学 > 编程文档 > PHP > 正文

PHP开发中session应用详解

来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/17
下载{$ArticleTitle}原创论文样式

  Session指的就是用户在浏览某个网站时,从进入网站到浏览器关闭所经过的这段时间,也就是用户浏览这个网站所花费的时间。从上述的定义中我们可以看到,Session实际上是一个特定的时间概念。

  一般来说,在网站上某一个页面中的变量(指服务器端变量,下同)是不能在中用的,有了session就好办了。session中注册的变量可以作为全局变量使用。这样我们就可以将session用于用户身份认证,程序状态记录,页面之间参数传递。

  在PHP3版本中是如何实现session的?

  php3本身是没有实现session功能的,我们只有用其他的方法来实现,这其中最有名的要算phplib了。phplib最基本的功能包括用户认证、Session管理、权限及数据库的抽象化。下面我们就讲述一下如何用phplib实现session。

  1、首先安装phplib(环境为win2000+php3.0.16+Apache1.3.12+phplib7.2c+mysql3.23.21 for win32)

  首先将phplib解开,里面有一个"php"目录,将这个目录拷贝到Apache的安装目录下。例如:Apache安装在d:Apache 目录下,那么就将"php"目录拷贝到d:Apache,并将phplib目录的pages目录下(不包括目录本身)的文件和目录一起拷贝到d:Apachehtdocs下。

  phplib的类库需要根据系统进行初始化,可能需要修改local.inc文件,其中包含着一些基本参数,可以根据自己机器的实际情况来进行修改。

  将d:Apachephpprepend.php文件中的一段程序改为如下样子:

if (!isset( PHP开发中session应用详解_网学

浏览:
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
湘ICP备09003080号
PHPLIB) or !is_array( PHP开发中session应用详解_网学
浏览:
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
湘ICP备09003080号
PHPLIB)) {
   PHP开发中session应用详解_网学
浏览:
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
湘ICP备09003080号
PHPLIB["libdir"] = "d:/Apache/php/"; //放phplib下php目录的路径

  修改d:Apachephplocal.inc文件:

class DB_Example extends DB_Sql {
  var $Host = "localhost"; //mysql数据库所在主机名
  var $Database = "test"; //数据库名
  var $User = "root"; //数据库用户名
  var $Password = "1234567"; //数据库用户密码

  最后根据phplib目录下的stuff子目录中的create_database.mysql文件生成初始表。

  由于每一个使用phplib的页面首先必须可以找到运行phplib所必需的类库文件,我们可以在php.ini中设置auto_prepend变量来支持,phplib中包含一个prepend.php文件,并将auto_prepend指定为"d:/Apache/php/prepend.php"(带引号)后,各页面就会自动包含phplib类库,我们还可以将phplib类库所在目录加进include变量中,以便可以找到这些文件。 2、调用page_open()函数

  在每一个使用phplib的页面中,必须首先调用page_open函数进行初始化,例如:

<?php
  page_open(array("sess" => "Test_Session"));
?> 

  数组变量(sess)用来初始化一些状态保存对象,这里应该注意:必须使用phplib内置名(sess),这些内置名是在local.inc中所定义的.。

  因为phplib使用了Cookies来保存状态信息,所以page_open()函数必须在页面内容输出到浏览器之前被调用。php脚本最后应以page_close()结束,这将会将有关状态数据写回到数据库中,否则变量会丢失。

  3、具体使用。

  注册一个变量后即可在随后的页面中使用它,直至session结束。方法:

  <?php $sess->register( "varname"); ?>

  注意,这里的varname不是变量值,而是变量名,可以先指定变量名,随后再赋值。你在某个页面中可以改变变量的值,随后的页面访问该变量时会得到改变后的值。变量的类型是多样的,可以是一个字符串,一个数字,一个数组。举例来说明:

  第一页:

<?php
 page_open(array("sess" => "Test _Session"));
 $sess->register( "welcome"); //注册变量$welcome,注意不需要加$
 $welcome="Hello,PHP world!";
 ……
 page_close();
?> 

  第二页:

<?php
 page_open();//开始sess

  • 上一篇资讯: PHP关于SQL注入攻击
  • 网学推荐

    免费论文

    原创论文

    浏览:
    设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
    版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
    湘ICP备09003080号