【问题标题】:populate dropdown list with list of databases用数据库列表填充下拉列表
【发布时间】:2011-03-12 00:06:54
【问题描述】:

.大家好,我的下拉菜单需要一点帮助。 .我已经知道如何从数据库中填充下拉列表,但我想做的是用我的 MySQL 服务器中可用的数据库列表填充我的下拉列表。谁能帮我正确编码这个。提前致谢!顺便说一句,我正在使用 php。

更新:

.好吧,我试过了:

$sql = "SHOW databases";
$result = mysql_query($sql);
echo '<form method="post" id="try" action="pillar.php">';
echo '<select name="batch" id="batch">';
echo '<option>';
while($r = mysql_fetch_assoc($result)) 
{
    $database = $r['Database'];
echo '<option>'.$database.'</option>';
}

echo '</select><br>';
echo '<input type="submit">';
echo '</form>';

它有效!但是有没有办法可以排除任何检索到的值?因为我想在我的下拉列表中输出的是数据库的批处理列表。但发生的情况是下拉列表包含 MySQL 的默认数据库。比如“information_schema”和“mysql”。

【问题讨论】:

    标签: php mysql drop-down-menu


    【解决方案1】:
    while($r = mysql_fetch_assoc($result)) 
    {
        if($r['Database'] == 'information_schema' 
           || $r['Database'] == 'test'
           || $r['Database'] == 'mysql' ){
        }else{
            $database = $r['Database'];
            echo '<option>'.$database.'</option>';
        }
    }
    

    (我不想在一个 if 子句中使用许多 FALSE 运算符,因此在 else 中的操作)

    【讨论】:

      【解决方案2】:

      在 MySQL 中拥有适当的数据库权限后,您可以使用 SHOW DATABASES 查询数据库

      $ignore = array('information_schema', 'mysql', 'test');
      $sql = "SHOW DATABASES";
      $q = mysql_query($sql);
      while($r = mysql_fetch_assoc($q)) {
          $database = $r['Database'];
          if(!in_array($database, $ignore)) {
              // do something
          }
      }
      

      【讨论】:

        猜你喜欢
        • 2014-12-25
        • 2014-08-27
        • 2011-11-09
        • 2018-10-03
        • 2016-01-09
        • 1970-01-01
        相关资源
        最近更新 更多