2011-05-17 147 views
2

我创建了一个“最近查看的项目”脚本,该脚本利用会话将所查看的产品插入到数据库中。然后,如果有一个会话,它将拉动您查看的产品。会话或Cookie [PHP]

但是,这似乎是会议'明确'?

昨晚我浏览了大约10种产品,它很成功,但我后来继续睡觉。一旦我醒来并再次测试,我的会话不再存在,并创建了一个新的会话。

编辑:昨天晚上睡觉前我让电脑睡觉。

现在,这看起来并不理想,但我认为我正处在成功的正确道路上。

你会如何处理这个问题? 我是否利用可用的最佳资源?

回答

2

这是正确的,会话有一个超时值。您可以通过参考PHP session configuration options来了解哪些设置会影响此设置。

作为一种替代方法,您可以将其存储在Cookie或数据库中。使用Cookie,您的存储容量有限。通过数据库,您可以将数据附加到用户,但支持匿名用户变得更加困难。

+0

再次感谢您帮助我使用该脚本 – 2011-05-17 02:12:29

+0

因此,您认为使用Cookie和会话将是足智多谋的 – 2011-05-17 02:14:54

+1

@RPM您可以使用Cookie临时存储来填充会话,但会话更难以使用,不要处理登录的用户,除非您有其他方式来识别它们。虽然有IP,但多个人可以来自同一个IP,并且IP地址也可能被欺骗。 – 2011-05-17 02:16:24

0

我也搜索了很多找到一个答案,但没有得到任何东西...我认识到,只有我的大脑能帮助我,我找到了一种方法

集饼干这样

<?php if(isset($_COOKIE['recent'])) 

{$arr = $_COOKIE['recent']; 
$arr = $arr." ".$_REQUEST['id'];} 
setcookie('recent', $arr, time()+10000, '/'); 

?> 然后,

$pizza =$_COOKIE['recent']; 
$pieces = explode(" ", $pizza); 
$key=0; 
foreach ($pieces as $key => $value) { 

呼应这里你想 }

什么