从 DB 获取数据以在下拉 HTML/CSS/MYSQL/PHP 中设置为默认值

Posted

技术标签:

【中文标题】从 DB 获取数据以在下拉 HTML/CSS/MYSQL/PHP 中设置为默认值【英文标题】:Get data from DB to set as default in dropdown HTML/CSS/MYSQL/PHP 【发布时间】:2014-04-10 03:52:39 【问题描述】:

大家好,我想从数据库中获取数据以在我的下拉菜单中设置为默认/选中。

我有一个名为 Update Project 的页面,在该页面中我有一个下拉组件,该组件由我的数据中的记录填充,但是我想从查询结果中设置选定的值。

这是我迄今为止尝试过的:

 $st_ac = $conn->prepare( "SELECT p.project_code,  m.type
                      FROM tblprojects as p
                      JOIN tblprojectsmaster as m
                      ON p.project_code = m.project_code
                      WHERE p.project_code = :code" );
 $st_ac->execute(array(':code' => $code));

 $result = $st_ac->fetch(PDO::FETCH_ASSOC);

 $ptype = $result['type']; // the data to be selected in the dropdwon

 <select name="projectType">
                <?php
                for($i=0; $row_pt = $st_pt->fetch(); $i++)
                   $type = $row_pt['type'];
                   $description = $row_pt['description'];

                   echo '<option value"' . $type . '"';
                   if($ptype == $type) 
                      echo 'selected="selected"';
                      echo '>' . $description . '</option>';
                      echo '<br />';

                ?>
                <option value="<?php echo $type; ?>"><?php echo $description; ?></option>
                <?php
                
                ?>

但我无法实现我想要的。有任何想法吗?您的帮助将不胜感激。谢谢。

【问题讨论】:

【参考方案1】:

试试这个

<select name="projectType">
                <?php
                for($i=0; $row_pt = $st_pt->fetch(); $i++)
                   $type = $row_pt['type'];
                   $description = $row_pt['description'];
                   echo '<option value="'.$type.'"';
                   if($ptype == $type) 
                    
                     echo 'selected="selected"';
                    
                  echo '>'.$description.'</option>';
                
                ?>

【讨论】:

我得到这个:解析错误:语法错误,意外的'if'(T_IF) ok.. 我认为您无法在 $ptype 和 $type 变量上存储值。您能否验证 $ptype 和 $type 变量中是否存在任何值【参考方案2】:

也许你可以这样使用

echo '<option value="' . $type . '"'; if($ptype == $type)  echo 'selected="selected"  >'; echo $description . '</option>'; echo '<br />';

【讨论】:

嘿抱歉,我收到一个错误:(所有其他值都不可见

以上是关于从 DB 获取数据以在下拉 HTML/CSS/MYSQL/PHP 中设置为默认值的主要内容,如果未能解决你的问题,请参考以下文章

PHP从数据库获取的下拉树

从 sql server 获取选定的值到 php 中的下拉列表

获取 BootstrapVue 下拉菜单(b-dropdown)以在单击按钮时显示

如何从现有 SQL DB ASP.Net MVC 4 在下拉列表中填充数据

如何从 mysql DB 中搜索与 mojolicious perl 中选定的下拉列表相关的内容

下拉以在 swift UI 中刷新数据