Php 数组中的表单不';if语句后不显示按钮

Php 数组中的表单不';if语句后不显示按钮,php,forms,if-statement,Php,Forms,If Statement,我已经找了几个小时试图找到一个解决办法。它必须是一个简单的,但我找不到它。 在没有if语句的情况下,所有这些都可以正常工作。每行都有一个按钮。但是每当我把if语句放回时,按钮就会出现。我做错了什么?我是否忽视了显而易见的事实 foreach($result as $row) { echo "<tr> <td>".date('d F Y', strtotime($row['DATE

我已经找了几个小时试图找到一个解决办法。它必须是一个简单的,但我找不到它。 在没有if语句的情况下,所有这些都可以正常工作。每行都有一个按钮。但是每当我把if语句放回时,按钮就会出现。我做错了什么?我是否忽视了显而易见的事实

    foreach($result as $row) {

            echo "<tr>
                    <td>".date('d F Y', strtotime($row['DATE']))."</td>
                    <td>".date('H:i  ', strtotime($row['TIME']))."</td>
                    <td>".$row['NAME']."</td>
                    <td>";
                    if ($row['availability'] == 0) { echo "FULL"; } 
                    else if ($row['availability'] != 0) { echo $row['availability']; };
                    "</td>
                    <td> <form method='post' action='res2.php'>
                    <input type='submit' name='action' value='Next'>
                    <input type='hidden' name='ID' value='".$row['ID']."'>
                    </form> </td>
                    </tr>";
        }
foreach($result作为$row){
回声“
.date('dfy',strottime($row['date'])
.date('H:i',strottime($row['TIME'])
“$row['NAME']”
";
如果($row['availability']==0){echo“FULL”;}
else if($row['availability']!=0){echo$row['availability'];};
"
";
}

根据可用性,可以使用条件运算符连接不同的字符串

foreach($result as $row) {
    echo "<tr>
              <td>".date('d F Y', strtotime($row['DATE']))."</td>
              <td>".date('H:i  ', strtotime($row['TIME']))."</td>
              <td>".$row['NAME']."</td>
              <td>" . ($row['availability'] == 0 ? "FULL" : $row['availability']) . "</td>
              <td> <form method='post' action='res2.php'>
                   <input type='submit' name='action' value='Next'>
                   <input type='hidden' name='ID' value='".$row['ID']."'>
                   </form> 
              </td>
          </tr>";
}
foreach($result作为$row){
回声“
.date('dfy',strottime($row['date'])
.date('H:i',strottime($row['TIME'])
“$row['NAME']”
“($row['availability']==0?”完整:$row['availability'])”
";
}

您在
if
之前完成了回显,但从未重新启动它,因此之后的所有内容都只是一个字符串,没有附加到任何内容或输出。换句话说,在
if/else
块之后需要另一个
echo
。您也可以使用三元运算符而不是
if/else
语句。一般建议:当
else if
条件与
if
条件相反时,您应该只使用
else