lamp

linux apache mysql php

解决php session跨页传递问题的三条途径

1、设置php.ini中的session.use_trans_sid = 1或者编译时打开打开了--enable-trans-sid选项,让PHP自动跨页传递session id。

2、手动通过URL传值、隐藏表单传递session id。

3、用文件、数据库等形式保存session_id,在跨页过程中手动调用。

第一种情况
page1.php

php Session跨页传递问题

session跨页传递需要考虑三种情况:

客户端禁用了cookie。
浏览器出现问题,暂时无法存取cookie
php.ini中的session.use_trans_sid = 0或者编译时没有打开--enable-trans-sid选项

php传递会话session ID

有两种方法传递一个会话 ID

cookie
URL 参数 会话模块支持这两种方法。
cookie 更优化,但由于不总是可用,也提供替代的方法。

php session使用会话变量

要使一个会话变量在某个范围内可以使用,必须首先使用session_start()函数启动一个会话。这样,就可以通过$_SESSION超级全局数组访问这个变量了。
如: echo $_SESSION[‘myvar’];
一个变量是否是注册的会话变量。
if(isset($_SESSION[‘myvar’]))
……

Page1.php

<?php

php session注册一个会话变量

PHP5使用$_SESSION[‘xxx’]=xxx注册SESSION全局变量。和GET,POST,COOKIE的使用方法相似。

页面

Subscribe to RSS - lamp