如何使用PHP检查Html中的条件

时间:2011-03-25 05:19:12

标签: php html

我使用的是HtML和PHP。我必须使用PHP检查带有If条件的表 例如

<?php if($status==0) {?>
<td><input type='text' name='test' id='test' value=''>
<?php }?>
<?php else (if($status==2) && ($status==1)) {?>
<td><input type='text' name='test' id='test' value=''>
<?php }?>

我得到了意外的其他意外和意外的布尔.........

是不是错了?

5 个答案:

答案 0 :(得分:1)

查看您的代码,似乎您有两个语法错误。


首先,以下几行:

<?php } ?>
<?php else (if($status==2) && ($status==1)) { ?>

只能放入一个PHP标记:}else之间不应该有关闭+开始标记。


其次,左括号不应该在elseif之间 - 但是条件是:

<?php } else if(($status==2) && ($status==1)) { ?>

答案 1 :(得分:1)

虽然其他人已经涵盖了您的语法错误,但我将介绍您的逻辑错误:

<?php } else if(($status==2) && ($status==1)) { ?>

检查$status是否等于2,然后检查$status是否等于1.

$status不能同时 1 2。

如果$status为1,则if检查评估为:

<?php } else if((false) && (true)) { ?>

...这是false,意味着条件不匹配。

你可能想要||,“逻辑或”运算符而不是&&,“逻辑和”运算符:

<?php } else if(($status==2) || ($status==1)) { ?>

Here's the PHP manual page on logical operators

答案 2 :(得分:0)

这是语法错误

<?php else (if($status==2) && ($status==1)) {?>

将其更改为

<?php elseif(($status==2) && ($status==1)) {?>

修改

elseif之间不允许有空格。此外,您还会遇到逻辑错误,因为其他人指出会将您的&&更改为||

  

注意:请注意elseif和if if   只会被认为是   使用大括号时相同使用冒号时   定义你的if / elseif条件,   你不能把别的东西分成两个   单词或PHP将失败并解析   错误。

<?php if ($vCertificateStatus==0):?> 
<td><input type="text" name="CertificateDate" id="CertificateDate" value="" /> 
<?php elseif(($vCertificateStatus==-1) || ($vCertificateStatus==1)):?> 
<td><input type="text" name="CertificateDate" id="CertificateDate" value="<?php echo $vReceivedDate;?>" />
<?php endif; ?>

答案 3 :(得分:0)

你在说别的时候会出现语法错误....我会按如下方式重写代码:

<?php if($status==0) :?>
<td><input type='text' name='test' id='test' value=''>
<?php else if (($status==2) && ($status==1)) :?>
<td><input type='text' name='test' id='test' value=''>
<?php endif; ?>

答案 4 :(得分:0)

你需要使用{...},并且结束;

<?php if($status==0) :?>
<td><input type='text' name='test' id='test' value=''>

<?php elseif(($status==2) && ($status==1)) :?>
<td><input type='text' name='test' id='test' value=''>
<?php endif; ?>

&GT;