0

我正在处理两个变量。一个会话变量和一个用户变量。

我希望我的系统像这样工作:

if ($TicketArray['PostName'] !== $Username) { die("") }

但我希望在$_SESSION['Administration']isset 时将其覆盖。所以我想出了这个:

if ($TicketArray['PostName'] !== $Username OR (!isset($_SESSION['Administration'])))
{
 die("");
}

但是,当用户名确实等于邮政名时,这会杀死脚本,并且是否设置了管理会话。我将如何构造一个包含以下内容的 if 语句:

不等于

或者

未设置

或者如果 Postname 不等于 $Username 但 $_SESSION['Administration']; 伊塞特;设置会话的人可以查看票证吗?

4

3 回答 3

4

我认为您只想使用&&而不是||(或or)。

if ($TicketArray['PostName'] !== $Username && !isset($_SESSION['Administration']))
{
     die("");
}
于 2013-02-06T03:32:12.970 回答
0
if(! isset($_SESSION['Administration']))
{
 if($TicketArray['PostName'] !== $Username)
 {
  die();
 }
}

或者

if(($TicketArray['PostName'] !== $Username) && (! isset($_SESSION['Administration'])))
{
 die();
}
于 2013-02-06T03:32:55.597 回答
0

你可以有一个嵌套的 if 语句。示例如下:

if (!isset($_SESSION['Administration']))
{
  if ($TicketArray['PostName'] !== $Username)
  {
   die("");
  }
}

该脚本将检查会话是否未设置,如果会话未设置,则块将检查用户名与 PostName 的比较。

这节省了一个复杂的 if 语句(如果你所问的甚至是可能的)

于 2013-02-06T03:33:09.857 回答