if(isset($_COOKIE['fengge']))
{
//echo $_COOKIE['fengge'];
if($_GET['tpl']==1)
{
setcookie("fengge",null);
setcookie("fengge",1,time()+100);
$_COOKIE['fengge']=2;
$this->display('index');
}
elseif($_GET['tpl']==2)
{
setcookie("fengge",null);
setcookie("fengge",2,time()+100);
$_COOKIE['fengge']=2;
$this->display('template/index');
}
else
{
if($_COOKIE['fengge']==1)
{
echo "<script>alert('1');</script>";
$this->display('index');
}
if($_COOKIE['fengge']==2)
{
echo "<script>alert('2');</script>";
$this->display('template/index');
}
}
}那些alert是我测试的刚开始没cookies,,就设cookies setcookie("fengge",1,time()+100);然后,第二次进入判断isset就有了,然后我想根据$_GET['tpl']的值来改变cookies的值,,理论是美好的,,现实是残酷的,,无论是进什么办法,cookies都一直还是1,,,极度郁闷费解,,话说我正怀疑cookies值能不能改变的???
{
//echo $_COOKIE['fengge'];
if($_GET['tpl']==1)
{
setcookie("fengge",null);
setcookie("fengge",1,time()+100);
$_COOKIE['fengge']=2;
$this->display('index');
}
elseif($_GET['tpl']==2)
{
setcookie("fengge",null);
setcookie("fengge",2,time()+100);
$_COOKIE['fengge']=2;
$this->display('template/index');
}
else
{
if($_COOKIE['fengge']==1)
{
echo "<script>alert('1');</script>";
$this->display('index');
}
if($_COOKIE['fengge']==2)
{
echo "<script>alert('2');</script>";
$this->display('template/index');
}
}
}那些alert是我测试的刚开始没cookies,,就设cookies setcookie("fengge",1,time()+100);然后,第二次进入判断isset就有了,然后我想根据$_GET['tpl']的值来改变cookies的值,,理论是美好的,,现实是残酷的,,无论是进什么办法,cookies都一直还是1,,,极度郁闷费解,,话说我正怀疑cookies值能不能改变的???
另外,cookie是在HTTP header里发送的。
你在同一个页面既要设NULL,又要赋值,是否是这里有问题?
echo $_COOKIE["test"];你试一下
setcookie(session_name(),session_id(),time() + $lifeTime, "/");//设置
setcookie(session_name(), '', time()-42000, '/');//摧毁
print_r($_SESSION);
print_r($_COOKIE);
//看看你的cookie值是不是你要摧毁