2015-09-19 89 views
1

我正在努力添加到收藏夹附件(其中帖子将通过已登录用户添加到收藏夹中),但后来我看到craigslist允许任何人在未登录的情况下添加收藏夹。他们如何做到这一点?浏览器是否有唯一的$ _SESSION ID?对不起,如果这是一个愚蠢的问题。

举个例子:http://orlando.craigslist.org/search/jjj(点击任何明星添加到收藏夹,可能无法在IE 11中使用)。

+0

是的,不同的浏览器,用于PHP的不同会话ID –

回答

0

他们只是使用一个会话,你应该能够通过查看他们存储在你的计算机上的cookie来检查。

+0

只是为了存储会话cookie,我如何在给定的例子中实现这个功能:'<?php session_start(); $ _SESSION ['userid'] = ... ?>'我应该放置什么而不是...? – qwikad

+0

@ HPierce等人。我应该用什么来为这个或那个浏览器存储一个cookie?它不应该是每个用户都独一无二吗?否则,他们将开始看到相同的收藏夹。 – qwikad

0

$ _SESSION中的所有内容仅在当前会话中保留。如果用户关闭浏览器并重新打开,则会生成新的会话。所以$ _SESSION不适合你的答案。

有$ _ENV您可以从中获取客户端的IP地址和一般浏览器数据。在大多数情况下,这足以识别单个用户。如果你跟踪这些数据,你可以防止用户多次投票。

+0

['$ _ENV'](http://php.net/manual/en/reserved.variables.environment.php)对于服务器环境变量来说似乎是超全球性的 - 你应该没有想过['$ _SERVER'](http://php.net/reserved.variables.server)? – HPierce

+0

是的,你是对的@HPierce – inbaz

+0

我的一些评论消失了。奇怪。在这个例子中我将使用什么:'<?php session_start(); $ _SESSION ['userid'] = $ _COOKIE [$ ck_id]; ?>'如果一个人拥有一个账户,那么这个方法可行。我会用什么来检索一个独特的cookie?我如何为这个或那个浏览器存储一个独特的cookie,将它们识别为唯一的用户? – qwikad

相关问题