仅在域主页上向未签名用户显示特定内容
Show specific content only on the domain home page to unsigned users
我需要仅在主页上显示位于外部 php 文件中的登录表单,该文件对于站点的所有页面都是通用的,可能看起来像 www.domain.com, www.domain.com/ or www.domain.com/index.php,仅对未登录的访问者显示。
我将以下代码放在大括号之前:
if(!isset($_SESSION["session"])
and
$_SERVER['REQUEST_URI'] === '/index.php'
or
$_SERVER['REQUEST_URI'] === '/')
但是虽然它遵守 URI 规则并在二级页面上隐藏了表单,但它仍会在主页上向已登录的访问者显示登录表单。
而且我确定应该还有其他问题。
我错过了什么?
我认为您必须将 OR 条件放在括号中。
所以,它必须是:
if (
!isset($_SESSION["session"]) and
($_SERVER['REQUEST_URI'] === '/index.php' or $_SERVER['REQUEST_URI'] === '/')
) {
// Your code
}
我需要仅在主页上显示位于外部 php 文件中的登录表单,该文件对于站点的所有页面都是通用的,可能看起来像 www.domain.com, www.domain.com/ or www.domain.com/index.php,仅对未登录的访问者显示。
我将以下代码放在大括号之前:
if(!isset($_SESSION["session"])
and
$_SERVER['REQUEST_URI'] === '/index.php'
or
$_SERVER['REQUEST_URI'] === '/')
但是虽然它遵守 URI 规则并在二级页面上隐藏了表单,但它仍会在主页上向已登录的访问者显示登录表单。
而且我确定应该还有其他问题。
我错过了什么?
我认为您必须将 OR 条件放在括号中。
所以,它必须是:
if (
!isset($_SESSION["session"]) and
($_SERVER['REQUEST_URI'] === '/index.php' or $_SERVER['REQUEST_URI'] === '/')
) {
// Your code
}