我正在努力添加到收藏夹附件(其中帖子将通过已登录用户添加到收藏夹中),但后来我看到craigslist允许任何人在未登录的情况下添加收藏夹。他们如何做到这一点?浏览器是否有唯一的$ _SESSION ID?对不起,如果这是一个愚蠢的问题。
举个例子:http://orlando.craigslist.org/search/jjj(点击任何明星添加到收藏夹,可能无法在IE 11中使用)。
我正在努力添加到收藏夹附件(其中帖子将通过已登录用户添加到收藏夹中),但后来我看到craigslist允许任何人在未登录的情况下添加收藏夹。他们如何做到这一点?浏览器是否有唯一的$ _SESSION ID?对不起,如果这是一个愚蠢的问题。
举个例子:http://orlando.craigslist.org/search/jjj(点击任何明星添加到收藏夹,可能无法在IE 11中使用)。
$ _SESSION中的所有内容仅在当前会话中保留。如果用户关闭浏览器并重新打开,则会生成新的会话。所以$ _SESSION不适合你的答案。
有$ _ENV您可以从中获取客户端的IP地址和一般浏览器数据。在大多数情况下,这足以识别单个用户。如果你跟踪这些数据,你可以防止用户多次投票。
['$ _ENV'](http://php.net/manual/en/reserved.variables.environment.php)对于服务器环境变量来说似乎是超全球性的 - 你应该没有想过['$ _SERVER'](http://php.net/reserved.variables.server)? – HPierce
是的,你是对的@HPierce – inbaz
我的一些评论消失了。奇怪。在这个例子中我将使用什么:'<?php session_start(); $ _SESSION ['userid'] = $ _COOKIE [$ ck_id]; ?>'如果一个人拥有一个账户,那么这个方法可行。我会用什么来检索一个独特的cookie?我如何为这个或那个浏览器存储一个独特的cookie,将它们识别为唯一的用户? – qwikad
是的,不同的浏览器,用于PHP的不同会话ID –