gpt4 book ai didi

php - 根据之前的选择选择字段

转载 作者:行者123 更新时间:2023-11-29 22:28:26 24 4
gpt4 key购买 nike

我正在尝试从先前的选择字段(在同一页面上)填充选择下拉列表

第一个选择显示 MYSQL 数据库中的表名称。第二个选择应显示所选表中的列名称

这是我的代码

page.php

<label class="">Select a Database Table</label>
<select class="full-width" data-placeholder="Select Table" data-init-plugin="select2" onchange="showColumn(this.value);">
<optgroup label="Table">

<?php

$table_count = mysql_query("SELECT TABLE_NAME FROM information_schema.tables WHERE table_schema = 'cl49-vclients'");

$tables = array();
while($row = mysql_fetch_array($table_count))
{ ?>
<option value="<?php echo $row["TABLE_NAME"]; ?>"><?php echo $row["TABLE_NAME"]; ?></option>
<?php
}
?>
<!-- </optgroup>-->
</select>
<script>
function showColumn(tablename)
{
if(tablename !='')
{
$.ajax({
type:"POST",
url :"ajax.php";
data:{tablename:tablename},
success:function(data){
alert(data); //This will alert column name comma separated
}
});
}
}
</script>

ajax.php

<?php
//make database connection
$column_count = mysql_query("SHOW COLUMNS FROM '".$_POST['tablename']."'");
$columns = array();
while($columnRow = mysql_fetch_array($column_count))
{
$columns[] = $columnRow['Field'];
}
echo implode(',',$columns); //This will return column name comma separated
?>

<label class="">Table</label>
<select class="full-width" data-placeholder="Select Table" data-init-plugin="select2" onchange="showColumn(this.value);">
<optgroup label="Table">

<?php
$table_count = mysql_query("SELECT TABLE_NAME FROM information_schema.tables WHERE table_schema = 'cl49-vclients'");

$tables = array();
while($row = mysql_fetch_array($table_count))
{
?>
<option value="<?php echo $row["TABLE_NAME"]; ?>"><?php echo $row["TABLE_NAME"]; ?></option>
<?php
}
?>
</optgroup>
</select>

第一个选择似乎可以很好地显示表名称,但是当我选择另一个选择字段时应该会出现,但它没有出现,任何人都可以帮忙吗?

最佳答案

在第二个查询中,您没有选择任何数据库。你需要

mysqli_select_db($con,"information_schema");

SHOW COLUMNS FROM '".$_POST['tablename']."'

或者,像这样替换第二个查询

SELECT COLUMN_NAME FROM information_schema.columns 
WHERE table_schema = 'cl49-vclients' AND TABLE_NAME = '".$_POST['tablename']."';

关于php - 根据之前的选择选择字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30051409/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com