当前位置:Gxlcms > PHP教程 > 用cookie显示浏览历史时,unserialize出错解决思路

用cookie显示浏览历史时,unserialize出错解决思路

时间:2021-07-01 10:21:17 帮助过:24人阅读

用cookie显示浏览历史时, unserialize出错
PHP code

';
echo '
下一页'; if(isset($_COOKIE['his'])) { //echo $_COOKIE['his'];exit; $data = unserialize($_COOKIE['his']); $url = $_SERVER['REQUEST_URI']; $data[] = $url; $data = array_unique($data); if(count($data) >10) { array_shift($data); } $urls = serialize($data); setcookie('his',$urls,time()*2*24*3600); } else { $url = $_SERVER['REQUEST_URI']; $data[] = $url; $urls = serialize($data); setcookie('his',$urls,time()*2*24*3600); } ?>

  • 浏览历史
  • ">

在浏览器中打开并在地址栏上输入id后,浏览器给了一个提示
HTML code

Notice: unserialize() [function.unserialize]: Error at offset 9 of 41 bytes in D:\server\apache\www\20120413\history.php on line 16


而且显示的历史记录也就一条,我想可能和上面的错误有关,可找不到解决的办法,语法上我看了几片,暂时没发现上面错误,望达人解惑!!!!!!

------解决方案--------------------
$data = unserialize(stripslashes($_COOKIE['his']));

这样试试,,不对打印出cookie值贴上来,

人气教程排行