[英]If/else for conditional <select> option
我在為HTML選擇表單中的選項獲取簡單的if / else條件感到麻煩。 如果出價值為“ N”,那么我希望選擇字段的一個選項更改為“ Y”,反之亦然。 我知道我的數據庫連接良好,其他php都可以正常工作,並且表單可以正常更新db,直到我嘗試在php條件代碼中工作,所以我只需要獲取正確的語法即可。
/* fetch associative array */
while ($row = mysqli_fetch_assoc($result)){
?>
<form method="post" name="update" action="update.php" >
<select name="bid">
<option value="<?php echo $row['bid']; ?>" selected="selected">
<?php echo $row['bid']; ?></option>
<? if ($row['bid'] == 'N') {
?>
<option value="Y">Y</option>
<? } else {
?>
<option value="N">N</option>
<? }
?>
</select>
<input type="submit" name="Submit" value="update" >
</form>
<?
}
if
語句期望表達式,並且語句中有語法錯誤
if (echo $row['bid']; == 'N')
由於echo
和分號而導致的語法錯誤;
您應該將條件更改為
if ($row['bid'] == 'N'){
如果$row['bid']
字符串,則需要與strcmp
進行比較,像這樣
if (strcmp($row['bid'] , 'N') == 0){
您還需要將<input>
標記移到<select>
您的<input type="submit">
在<select>
里面,所以我將其移到了外面。
以這種方式使用if
語句也是不正確的:
if (echo $row['bid']; == 'N')
正確的是這樣的:
if ($row['bid'] == 'N')
這是更正的代碼:
<form method="post" name="update" action="update.php" >
<select name="bid">
<?php
echo '<option value="'.$row['bid'].'" selected="selected">'.$row['bid'].'</option>';
if ($row['bid'] == 'N') echo '<option value="Y">Y</option>';
else echo '<option value="N">N</option>';
echo '</select>';
?>
<input type="submit" name="Submit" value="update" >
</form>
您的條件不好,必須刪除echo
和;
。 它應該像這樣
<? if ($row['bid'] == 'N') { ?>
並且您的提交按鈕應顯示在選擇字段之外。 您的代碼應如下所示:
<form method="post" name="update" action="update.php" >
<select name="bid">
<option value="<?=$row['bid']?>" selected="selected">
<?=$row['bid']?>
</option>
<?php if ($row['bid'] == 'N') {
echo '<option value="Y">Y</option>';
} else {
echo '<option value="N">N</option>';
}
?>
</select>
<input type="submit" name="Submit" value="update" >
</form>
您的if條件語法錯誤。 刪除分號和echo語句。
<form method="post" name="update" action="update.php" >
<select name="bid">
<option value="<?php echo $row['bid']; ?>" selected="selected">
<?php echo $row['bid']; ?></option>
<? if ($row['bid'] == 'N') {
?>
<option value="Y">Y</option>
<? } else {
?>
<option value="N">N</option>
<? }
?>
<input type="submit" name="Submit" value="update" >
</select>
</form>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.