根据数据库获取的值设置选定值

Set Selected Value Based On Database Fetched Value

案例:

大家好,Whosebug 社区。

我想根据从数据库 table 列中获取的值在 SELECT 类型输入上设置选定值。因此,如果 db table 列包含 "A",SELECT 类型输入也将显示 "A".

SELECT 类型输入中的值,手动提供。

实验:

为了展示我如何执行此操作的逻辑,我尝试了此代码

// $query2['via'] will produce fetched value from database
<select selected='".$query2['via']."' name='slPayment'>
<option>--</option>
<option value='Cash'>Cash</option>
<option value='Bank Transfer'>Bank Transfer</option>
<option value='Credit Card'>Credit Card</option>
<option value='Cheque'>Cheque</option>
<option value='Others'>Others</option>
</select>

实验结果:

不会工作

期望输出:

我实际上只是想要 SELECT 类型的输入,从获取的数据库值中显示完全相同的值。知道如何解决这个问题吗?

谢谢

感谢 Whosebug 社区。我不会停止说谢谢。顺便说一句,我纯粹是在寻求学习和知识共享。我愿意接受任何评论(与此问题相关的信息)。

但是请不要像我只是在索取代码一样评判我。我实际上是根据该代码本身学习如何编码,然后我适应正确使用该代码,不熟悉图书馆,我仍然是一名大学生。在我自己尝试之前我不会问。有些人确实在最近的问题上评判了我。这对这个社区来说不是很好的行为。我在学习,我们在学习。

再次感谢您。

img_type是我的查询结果 我想要 img_name 在 drop_down

 <select id="id_name"  name="photo_type" value="">
                  <option value=""></option>
                   <?php foreach($img_types as $row){ ?>
                    <option value="<?php echo $row->imgtype_id?>"><?php echo $row->imgtype_name?></option>
                    <?php } ?>
                </select>

您可以这样更改您的代码:

<select name='slPayment'>
    <option>--</option>
    <option " . (($query2['via']=='Cash') ? 'selected="selected"': '') .  "value='Cash'>Cash</option>
    <option " . (($query2['via']=='Bank Transfer') ? 'selected="selected"': '') . " value='Bank Transfer'>Bank Transfer</option>
    <option " . (($query2['via']=='Credit Card') ? 'selected="selected"': '') . " value='Credit Card'>Credit Card</option>
    <option " . (($query2['via']=='Cheque') ? 'selected="selected"': '') . " value='Cheque'>Cheque</option>
    <option " . (($query2['via']=='Others') ? 'selected="selected"': '') . " value='Others'>Others</option>
</select>