如何编辑从表中查找值的下拉字段

时间:2017-09-15 11:34:50

标签: php

我想编辑一个从表中查找值的下拉字段。通常,在html中编辑下拉选项我们使用类似:

<option value="montserrado" <?php if($ncounty == "montserrado") { echo "selected=\"selected\""; } ?>>Montserrado</option> 

但是一旦下拉列表值来自表格,此方法对我不起作用。

1 个答案:

答案 0 :(得分:0)

以编程方式创建下拉列表将是最佳选择。

类似的东西:

<?php 
$options = array('item1','item2','item3','etc');
$select = null; 
?>
<select name="field">
<?php
   foreach($options as $value) {
      if($value == "montserrado") {
          $select = " selected";
      } else $select = "";
      echo "<option$select>$value</option>";
 }
?>
</select>

如果您的字段在表格中,那么您将更改通过调用数据库生成的$options数组。

例如使用mysql和zend:

$dbcondetails = array('host' => 'dbhost', 'port' => '3306', 
     'dbname' => 'dbname', 'username' => 'user', password' => 'superpw');
$db = Zend_Db::factory('PDO_msyql', $dbcondetails);
$sql = 'select field from table';
$options = $db->fetchAll($sql);

此示例忽略了php catch可以执行的所有良好错误检测,可以找到有关使用Zend_db_Adapter的信息here

您可以在将数据写回数据库之前编辑生成的$_POST数据。

HTH