防止用户ID

问题描述:

我必须具备下列URL用户个人资料页面访问用户的个人资料页:www.XXXXXXX.com/userid/45防止用户ID

是有办法阻止访问其他网页,当用户变化/用户名/ 45 /用户名/ 47

+0

需要途径更多信息:对于初学者您使用哪种语言? – PeeHaa

+0

正在使用php和zend框架 – Inducesmile

根据您所使用的语言,像这样的用户个人资料页上:

if url_segment(2) != user_info['userid'] 
    render no_permission 
end 

你可能想看看Zend_Acl里。

http://framework.zend.com/manual/en/zend.acl.introduction.html

这将允许你来控制访问基于发出请求的角色分配权限的某些资源(例如配置文件)。你也可以用断言指定更细粒度的访问。

因此,例如,您指定了一个'已注册'角色,用于在您的网站注册的用户,他们也有一个配置文件页面。您的规则可能会这样读取: -

'registered'可以'显示''profile''如果是他们的个人资料'。

角色: '注册'

特权: '显示'

资源: '曲线'

断言:代码检查所有权

我在WordPress寻找这和只有在发布我的回答后,我甚至意识到你正在询问除wordpress以外的其他东西......哦,对于犯同样错误的人,这里是同样的事情,但对于wordpress:

您可以通过将==更改为!=并仅输入管理员标识(通常为“1”)来修改此选项,以使其重定向所有用户而不是一个用户。

add_action('admin_init', 'redirect_to_forum'); 
function redirect_to_forum(){ 
    $current_user=wp_get_current_user(); 

    if($current_user->user_id == "47"){ 
     header('Location: http://somewhereelse.com'); 
    } 
}