0

if 和 elseif 语句同时工作。

  while($answerResult = mysql_fetch_assoc($answers))
  {
    if($reportResult != 0 && $this->CheckAnswer($questionId,$answerResult['id'],$reportResult))
    {
       echo '<input type="radio" name="question['.$questionId.']" value="'.$answerResult['id'].'" checked/>'.$answerResult['name'].'aaa&nbsp;&nbsp';
    }
    elseif($sampleResult != 0 && $this->CheckAnswer($questionId,$answerResult['id'],$sampleResult))
    {
       echo '<input type="radio" name="question['.$questionId.']" value="'.$answerResult['id'].'" checked/>'.$answerResult['name'].'hee&nbsp;&nbsp';
    }
    else
    {
       echo '<input type="radio" name="question['.$questionId.']" value="'.$answerResult['id'].'" />'.$answerResult['name'].'&nbsp;&nbsp';
    }
  }

如果我的第一个陈述为真,那么我正在尝试执行其他条件,但如果我的第一个条件为假,则检查 elseif 条件。

但是,即使第一个 if 条件为真,我的 elseif 条件仍然有效。

我把'hee'和'aaa'放在'echo'的末尾,看看哪个在打印。

结果:

首先,如果语句正在工作并使用“aaa”打印,然后查看 elseif 语句并检查并打印“hee”。

所以,我不知道我错过了什么,也找不到任何解决方案,有什么建议吗?

4

1 回答 1

3

, if, elseifandelse在一个语句中是排他的,所以这不应该发生。

整个语句在一个while循环中......你确定它不是if在第一次迭代elseif中执行并且在第二次迭代中执行吗?

于 2012-12-07T10:17:08.693 回答