会话ID等 [英] session IDs and the like

查看:55
本文介绍了会话ID等的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

Hi Folk


请原谅我提出这样一个基本问题......我有一个我想要的网站

从开始到跟踪用户为了做到这一点,我已经为每个页面设置了

以下结构,参考了startup.php,其中管理了

会话。任何人都可以检查我做得对。我以为我是b $ b做得对,但随后该网站开始做真的,非常有趣

的东西,基本上失去了会话的轨道......


我希望我的应用程序尽可能便携,所以我想覆盖

所有重要的php.ini值。


提前致谢(TIA)

- Nicolaas


<?php

include_once(" startup.php" );

if(!startup()){

die(无法加载应用程序);

}

...

... //这里的页面内容

...

echo''< a href = " testme.php?''。sid(false)。''">链接页面上的一个< / a>'';

echo''< a href =" testme.php?a = 3''。sid(true)。''">链接页面上的两个< / a>'';

....

.... //更多页面内容

....

?>

/*startup.php文件:* /

//函数来开始会话

函数启动(){

$ expiry = 60 * 60 * 24 * 1000;

ini_set(''session.cache_limiter' ',''nocache'');

ini_set(''session.use_trans_sid'',1);

ini_set(''arg_separator.output''," & amp;");

ini_set(''session.use_cookies'',1);

ini_set(''session.use_only_cookies'',0);

setcookie(" CookieTest"," t"); //设置一个cookie,以便下次我们知道

用户是否可以做饼干

ini_set(''session.cookie_lifetime'',$ expiry);

session_start();

}

//函数包含会话ID以防他们不接受cookie

function sid( $ withamp){

if($ _ COOKIE [" CookieTest"] ==" t"){

return'''';

}

$ s = session_id();

if($ s){

if($ withamp){

$ v =''& amp;'';

}

$ v。=''PHPSESSID =''。$ s;

返回$ v;

}

}

/ * startup.php * /

Hi Folk

Forgive me for asking such a basic question... I have a site where I want to
track the user from start till end... To do this, I have setup the
following structure for each page, referring to startup.php, where the
session is managed. Can anyone check that I am doing it right. I thought I
was doing it right, but then the site started doing really, really funny
stuff, basically loosing track of sessions ...

I want my application to be as portable as possible, so I want to override
all the php.ini values that are important.

Thanks in advance (TIA)
- Nicolaas

<?php
include_once("startup.php");
if ( !startup( ) ) {
die("could not load application");
}
...
...//page content here
...
echo ''<a href="testme.php?''.sid(false).''">link one on the page</a>'';
echo ''<a href="testme.php?a=3''.sid(true).''">link two on the page</a>'';
....
....//more page content here
....
?>
/*startup.php file: */
//function to start session
function startup() {
$expiry = 60 * 60 * 24 * 1000;
ini_set(''session.cache_limiter'', ''nocache'');
ini_set(''session.use_trans_sid'', 1);
ini_set(''arg_separator.output'', "&amp;");
ini_set(''session.use_cookies'', 1);
ini_set(''session.use_only_cookies'', 0);
setcookie("CookieTest", "t"); //set a cookie so next time we know if the
user can do cookies
ini_set(''session.cookie_lifetime'', $expiry);
session_start();
}
//function to include session ID in case they do not accept cookies
function sid($withamp) {
if($_COOKIE["CookieTest"] == "t") {
return '''';
}
$s = session_id();
if($s) {
if($withamp) {
$v = ''&amp;'';
}
$v .= ''PHPSESSID=''.$s;
return $v;
}
}
/* end of startup.php */

推荐答案

expiry = 60 * 60 * 24 * 1000;

ini_set(''session.cache_limiter'',''nocache'');

ini_set(''session.use_trans_sid'',1);

ini_set(''arg_separator.output'',"& amp;");

ini_set(''session.use_c ookies'',1);

ini_set(''session.use_only_cookies'',0);

setcookie(" CookieTest"," t"); //设置一个cookie,以便下次我们知道

用户是否可以做饼干

ini_set(''session.cookie_lifetime'',
expiry = 60 * 60 * 24 * 1000;
ini_set(''session.cache_limiter'', ''nocache'');
ini_set(''session.use_trans_sid'', 1);
ini_set(''arg_separator.output'', "&amp;");
ini_set(''session.use_cookies'', 1);
ini_set(''session.use_only_cookies'', 0);
setcookie("CookieTest", "t"); //set a cookie so next time we know if the
user can do cookies
ini_set(''session.cookie_lifetime'',


expiry);

session_start();

}

//函数包含会话ID以防他们不接受cookie

函数sid(
expiry);
session_start();
}
//function to include session ID in case they do not accept cookies
function sid(


withamp){

if(
withamp) {
if(


这篇关于会话ID等的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆