使用PHP阻止某些站点区域

时间:2011-01-25 20:29:57

标签: php security session

我不希望用户访问其他用户个人资料。所以这就是我正在做的事情。好吗?

<?php

session_start();

if($_SESSION['username']=='ryan'){
header("location:dash.php");
}
else{
location("location:404.php");
}

?>

这样安全吗?

2 个答案:

答案 0 :(得分:0)

如果用户无法修改$_SESSION['username']的值以将其设置为ryan,则安全;但您忘记了exit之后的header('Location:...')

答案 1 :(得分:0)

这是一个可接受的解决方案,但只是规模非常小。您应该避免基于用户名的硬编码条件。如果该网站有超过10个用户,这将变得非常麻烦。而且您需要确保用户无法轻易更改用户名。