文档介绍:,把当前的sessionId写进cookie里面cookie在不同域名下是不能访问的,我们需要在访问在后台设置用户在登录的时候,把需要共用的登录信息的域名,如果是在1,2级域名下,直接把cookie设置为所属主域名,例如:setcookie("session_id",session_id(),time()+3600*24*365*10,"/",".");也许你会问:如果是在不同的域名呢?采用P3P技术简单解决,实现原理,的时候,文件的写入sessionid值,sessionid值便可以获取,然后把seesion值存入数据库,取相同的sessionid值便可。里面的程序文件必需能跨域访问,默认情况下,浏览器是不能跨域设置cookie的,加上p3p头后才行。在对应php文件加上:header(‘P3P:CP="OIDSPCOR"’);,是以文件形式存在,而非存储在服务器的内存中,在这里我们得修改为所有域下都能访问的方式。网上介绍了数据库存储,文件形式存储,内存存储,如果用数据库存储session数据,网站的访问量很大的话,SESSION的读写会频繁地对数据库进行操作,效率就会明显降低,可以考虑存在内存服务器来实现,。常用跨域共用session的是登录模块,我相信很多开发的朋友的都遇到过,只需要一个地方登录,相关联的网站也是处于登录状态。两种情况:,之间方式一:在一,二级域名下调用如下代码:<!--?phpinclude("");$_SESSION['usssser_oke']='xxssssss';$_SESSION['user_oke']='xxsss';?--><!--?php/**/**直接引用apiQQ登录的session写法,配置相关配置才行哈*设置session配置*//***CREATETABLE`tbl_session`(*`session_id`varchar(255)binaryNOTNULLdefault'',*`session_expires`int(10)unsignedNOTNULLdefault'0',*`session_data`text,*PRIMARYKEY(`session_id`)*)ENGINE=MyISAM;*/classSession{//mysql的主机地址constdb_host="localhost";//需要第三方指定ip地址//数据库用户名constdb_user="root";//需要第三方指定自己的用户名//数据库密码constdb_pwd="";//需要第三方指定自己的库据库密码//数据库constdb_name="thinkphp";//需要第三方指定数据库//数据库表constdb_table="tbl_session";//需要第三方指定数据表//mysql-handleprivate$db_handle;//session-lifetimeprivate$lifeTime;functionopen($savePath,$sessName){//getsession-lifetime$this--->lifeTime=get_cfg_var("");//opendatabase-connection$db_handle=***@mysql_connect(self::db_host,self::db_user,self::db_pwd);$dbSel=***@mysql_select_db(self::db_name,$db_handle);//essif(!$db_handle||!$dbSel)returnfalse;$this->db_handle=$db_handle;returntrue;}functionclose(){$this->gc(ini_get(''));//closedatabase-******@mysql_close($this->db_handle);}functionread($sessID){//fetchsession-data$res=***@mysql_query("SELECTsession_dataASdFROM".self::db_table."WHEREsession_id='$sessID'ANDsession_expires>".ti