0

value="abc"ドロップダウンリストに、テキストフィールドなどのデフォルト値を設定したいと思います。唯一の注意点は、SQLクエリが指す場所にデフォルト設定することです。長いコードを失礼します。

//prior code where table and `foreach()` loop begins
                        <td>
                            <input type="text"
                                value="<?php echo $var["author"]; ?>"
                                required="required">
                            </input>
                        </td>
                        <td>
                            <select name="condition"
                                value="<?php echo $var["condition"]; ?>"
                                    <option>M</option>
                                    <option>NM</option>
                                    <option>E</option>
                                    <option>G</option>
                                    <option>P</option>
                            </select>
                        </td>
//subsequent code where table is closed

前半は、デフォルト値のテキストフィールドがあります$var["author"]。これは、事前にクエリを実行したためです。2つ目は、テキストフィールドではなくドロップダウンメニューであるため、同じ結果が得られないようです。.sqlクエリで「NM」が表示された場合、デフォルト値は常に「M」になります。これを行う方法はありますか?

4

1 に答える 1

2

あなたが欲しいのはこれです:

//prior code where table and `foreach()` loop begins
                        <td>
                            <input type="text"
                                value="<?php echo $var["author"]; ?>"
                                required="required">
                            </input>
                        </td>
                        <td>
                            <select name="condition">
                                    <option value="M"<?php echo ($var["condition"] == 'M' ? ' selected="selected"' : ''); ?>>M</option>
                                    <option value="NM"<?php echo ($var["condition"] == 'NM' ? ' selected="selected"' : ''); ?>NM</option>
                                    <option value="E"<?php echo ($var["condition"] == 'E' ? ' selected="selected"' : ''); ?>E</option>
                                    <option value="G"<?php echo ($var["condition"] == 'G' ? ' selected="selected"' : ''); ?>G</option>
                                    <option value="P"<?php echo ($var["condition"] == 'P' ? ' selected="selected"' : ''); ?>P</option>
                            </select>
                        </td>
//subsequent code where table is closed

またはよりエレガント:

$dropdownOptions = array('N', 'NM', 'E', 'G', 'P');
//prior code where table and `foreach()` loop begins
                        <td>
                            <input type="text"
                                value="<?php echo $var["author"]; ?>"
                                required="required">
                            </input>
                        </td>
                        <td>
                            <select name="condition">
                                    <?php foreach ($dropdownOptions AS $option) {
                                         echo '<option value="' . $option . '"' . ($var["condition"] == $option ? ' selected="selected"' : '') . '>' . $option . '</option>';
                                    } ?>
                            </select>
                        </td>
//subsequent code where table is closed
于 2013-01-03T06:48:26.867 に答える