会话ID等 [英] session IDs and the like
问题描述
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'', "&");
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 = ''&'';
}
$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'', "&");
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屋!