2015-07-19 49 views
1

我目前有一个文件使用$_GET['id'] = $userProfileNumber,以唯一地生成适当的用户数据。

我的问题是:为了确保我将用户重定向到他们的OWN配置文件,我应该在所有配置文件链接中引用"profile.php?=".$ownID?还是有更简单的方法?谢谢。

$ownID= id登录时从电子邮件栏中,用于表示登录用户。

+0

如果用户更改URL会发生什么,并增加了一个ID?它可以加载其他人的数据吗? –

回答

1

我会将答案分成两个主要场景。

  1. 第一种情况:档案页面是公开的。你感兴趣的是每个用户都会看到他的伴侣的个人资料。在这种情况下,我会完全同意你的方式,因为有很多用户。即使在这里,在Stackoverflow上,你也可以点击下面我的个人资料,并在URL中见证用户标识(使用额外的用户名,这是不需要的,只是为了好看)。

  2. 第二种情况:配置文件页面是私人的。它仅用于使用当前登录的用户。在这里,我会想到Ben Fried的想法 - 将重复的用户数据缓存为cookie或本地/会话存储,并将其作为HTTP头/有效内容传递。

    安全的这种做法发出:你应该考虑的认证机制。即在登录时生成经过验证的令牌,以供以后使用。在每个请求中,验证此令牌,然后才能检索所需和受保护的数据。

+0

是的,这是沿着社交媒体网站的行,使每个网页公开 –

2

您可以在登录时将他们的ID存储在会话中,并使用$ _GET从profile中获取会话ID而不是URL参数。