我想在选择数字1并在数据库中加载时隐藏表单的字段。
代码没有错误,但字段在数字0和1处保持可见。
不知怎的,我无法做对。它尝试了以下内容;
<?php
$query3 = mysql_query("SELECT `status`, `authcode` FROM `auth` ORDER BY `status` ASC LIMIT 1");
while($row3 = mysql_fetch_object($query3)){
?>
<tr>
<td><b>Authcode:</b></td>
<td>
<input name="authcode" type="text" value="<?= $row->authcode; ?>" <?php if($row->status == 0) ?> />
<input name="authcode2" type="hidden" value="<?= $row->authcode; ?>" <?php if($row->status == 1) ?> />
</td>
</tr>
答案 0 :(得分:2)
您需要将if
包围在您想要条件化的输出上:
<?php if ($row3->status == 0) { ?>
<input name="authcode" type="text" value="<?= $row3->authcode; ?>" />
<?php }
if ($row3->status == 1) { ?>
<input name="authcode2" type="hidden" value="<?= $row3->authcode; ?>" />
<?php } ?>
答案 1 :(得分:0)
您必须在if
语句之前添加:
<?php if ($row->status == 1) ?>
<input name="authcode2" type="hidden" value="<?= $row->authcode; ?>"/>
答案 2 :(得分:0)
同意Bamar和Pablo。
如果您只想要隐藏字段一次(row-&gt; status == 1),您可以使用以下内容更精确:
<input name="authcode" type="<?php echo (($row->status == 1)?'hidden':'text') ?>" value="<?php echo $row->authcode; ?>" />
干杯。