使用数据库列表填充下拉列表

时间:2011-03-12 00:06:55

标签: php mysql drop-down-menu

。我希望每个人都需要一点帮助才能获得下拉菜单。 我已经知道如何从数据库填充下拉列表,但我想要做的是用我的MySQL服务器中可用的数据库列表填充我的下拉列表。任何人都可以帮我正确编码这个。提前致谢!顺便说一下我使用的是php。

更新

.alright我试过这个:

$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>';

IT工作!但有没有办法可以排除任何检索到的值?因为我想在我的下拉列表中输出的是批处理列表,即数据库。但是,下拉列表包括MySQL的默认数据库。比如“information_schema”和“mysql”。

2 个答案:

答案 0 :(得分:1)

使用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
    }
}

答案 1 :(得分: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中执行操作)