selected =根据mysql数据库中的值选择

时间:2013-02-16 14:27:03

标签: php html mysql

我目前在自己的CMS上工作,用户可以在其中添加和更新他的项目。 添加它们就像一个魅力,并且更新正在运行,但是当我点击一个项目(它获得基于$_GET['id']的所有信息)时,类别值始终是我的select元素中的第一个选项。

我知道这可以通过向选项元素添加selected="selected"来实现,但我想让它使用数据库中的值,这就是我感到困惑的地方。

我想让这部分充满活力:

<select  name="categorie">
   <option value="cv">CV / Boiler</option>
   <option value="onderhoudrenovatie">Onderhoud & Renovatie</option>
   <option value="sanitair">Sanitair</option>
</select>

选项值已添加到“projecten”表的“类别”字段中,已写入数据库。

有没有人有解决方案? 谢谢!

2 个答案:

答案 0 :(得分:2)

您必须获取值并分配给变量。然后,使用基本的PHP,您可以根据值选择是否“选择”打印。

例如:

<?php $data=$_GET['id']; ?>

<select  name="categorie">
 <option value="cv" <?php if ($data=="cv") print "selected"; ?>>CV / Boiler</option>
 <option value="onderhoudrenovatie" <?php if ($data=="onderhoudrenovatie") print "selected"; ?>>Onderhoud & Renovatie</option>
 <option value="sanitair" <?php if ($data=="sanitair") print "selected"; ?>>Sanitair</option>
</select>

答案 1 :(得分:0)

尝试做这样的事情:

$categories = array() ; //Fill your array with data from your database ;
$selectedId = (isset($_GET['id'])) ? $_GET['id'] : null ;

foreach ($categories as $cat){ ?>
   <option value="<?php echo $cat['name'] ;?>" <?php echo (!empty($selectedId) &&  $cat['id'] == $selectedId) ? "selected" : "") ; ?> >
      <?php echo $cat['name'] ; ?>
    </option>

 <?php
}