修改
如果我使用下面的脚本,它会与其他页面产生一些冲突:
if (!isset( $_GET[ "id" ] ) ) {
header( "Location: home.php" );
}
这允许访问者使用我不想要的URL参数访问所有页面,例如:friends.php?id=22
。 访问者应该可以访问的唯一具有参数的网址是profile.php?id=$id
处理需要用户注册/登录的小项目。
到目前为止,如果访问者(未登录)在profile.php
中输入,他们将自动重定向到主页。
现在,我想要完成的是,如果他们想特别查看用户的个人资料,请不要重定向他们,例如profile.php?id=22
。
这是我到目前为止所做的:
if ((!preg_match(" {(?:login|logout|signin|register|profile)\.php$}",
$_SERVER["PHP_SELF"])) && (empty($_SESSION["id"])) )
{
header('Location: home.php');
}
不幸的是,这会重定向所有输入profile.php?id=22
的访问者。
简而言之,
profile.php
应该重定向,profile.php?id=$id
不应该。