首先解释一下什么是session,如果你不知道的话。当一个访问者来到你的网站的时候一个session就开始了,当他离开的时候session就结束了。本质是来说,cookie是和浏览器有关系,而session变量就可以存一些资源变量在服务器上面。php4用文件存储session变量,但理论上可以用数据库或共享内存来做这件事。
所有的页面都用php4的session必须用session_start()功能函数来告诉php4引擎来取有关的session到内存中
。函数session_start()可以在cookie域里或请求的参数中取得session_id为了响应http请求。如果不能找到
sessionid就新建一个session。
什么是session变量?
session变量是个有规律的全局变量,当一个session变量被注册,用php4可以在所有的页面上得到session
的值。用session_register("variable_name")可以注册一个session变量。在所有并发的的用session就使用
session_start()函数,变量的值将作为一个session变量注册为session。
我们能作什么?
通常有很多的方法来管理session和session变量,我将给你个例子。说你将建一个商业站点,象我这样的,
你可能想保持已经被承认的用户当前的名字,或有多少的新消息用户已经得到。为了不在从数据库里读取,你
有两个方法可以做:
1.1.你可以用三个cookie
。authenticated_user – 当前的用户名称
。num_messages – 他得到的信息的数量
。expire_time – 何时重新读取信息数量
2.2.用sessions和新建三个session变量
第一个方法安全性不好,一些人可以得到cookie进入他人的领域。
用sessions用户仅得到一个cookie,安全的多。
缺点
session给了你自由,过度的用session会影响脚本语言的使用。虽然php4的session有些限制,如你不能存对象
在session里。
自己试一试吧!
