0

我想在选择数字 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>
4

3 回答 3

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 } ?>
于 2013-10-31T19:39:56.450 回答
0

同意 Bamar 和 Pablo 的观点。

如果您只想要隐藏字段一次(row->status == 1),您可以更精确地使用以下内容:

<input name="authcode" type="<?php echo (($row->status == 1)?'hidden':'text') ?>" value="<?php echo $row->authcode; ?>" />

干杯。

于 2013-10-31T19:49:43.477 回答
0

你必须把if声明放在前面:

<?php if ($row->status == 1) ?>
     <input name="authcode2" type="hidden" value="<?= $row->authcode; ?>"/>
于 2013-10-31T19:37:16.000 回答