$String = $_COOKIE["key"].",".$keyword;
setcookie("key",$String);
问题出在这块.
你每次都在原来的基础上,再加上一个$keyword,所以每次都要重新写一次.比如说xxx.php?keyword=test
这样你每刷新一次页面就会在cookie里加上,test,重复多少次,就加多少个.
setcookie("key",$String);
问题出在这块.
你每次都在原来的基础上,再加上一个$keyword,所以每次都要重新写一次.比如说xxx.php?keyword=test
这样你每刷新一次页面就会在cookie里加上,test,重复多少次,就加多少个.
怎么解决.
else
{
$String = $_COOKIE["key"].",".$keyword;
setcookie("key",$String);
}
去掉这部分就不会写了.
{
setcookie("key[]", $keyword);
}else
{
if(!in_array($keyword,$_COOKIE["key"])){
setcookie("key[]",$keyword);
}
}$ListCooke = $_COOKIE["key"];echo count($ListCooke);
echo "";print_r($ListCooke);
用数组来保存吧
if(isset($_GET['keyword']))
{
$keyword = urlEncode($_GET['keyword']);
if(isset($_COOKIE['key']))
{
if(get_magic_quotes_gpc())
{
$strCookie = stripslashes($_COOKIE['key']);
}
$arrCookie = unserialize($strCookie);
if(!in_array($keyword, $arrCookie))
{
$arrCookie[] = $keyword;
setCookie('key', serialize($arrCookie));
}
}
else
{
$arrCookie[0] = $keyword;
setCookie("key", serialize($arrCookie));
}
}
if(get_magic_quotes_gpc())
{
$strCookie = stripslashes($_COOKIE['key']);
}
print_r(unserialize($strCookie));结帖吧,呵呵!代码经过测试!
Warning: in_array() [function.in-array]: Wrong datatype for second argument in E:\APM_Setup\htdocs\meta_sh\savecookie.php on line 12Warning: Cannot modify header information - headers already sent by (output started at E:\APM_Setup\htdocs\meta_sh\savecookie.php:12) in E:\APM_Setup\htdocs\meta_sh\savecookie.php on line 15
好像还是有点问题?我这里为什么总提示上面两个错误?
{
setcookie("key[0]", $keyword);
}else
{
if(!in_array($keyword,$_COOKIE["key"])){
setcookie("key[".count($_COOKIE["key"])."]",$keyword);
}
}$ListCooke = $_COOKIE["key"];echo count($ListCooke);
echo "";print_r($ListCooke);