gpt4 book ai didi

php - mysql中自定义查询的输出列名

转载 作者:行者123 更新时间:2023-11-29 12:22:51 25 4
gpt4 key购买 nike

我使用 php 创建了一个用于自定义 SQL 查询的小型输入表单。我已经能够将结果输出到 csv 表单,但是在输出文件中包含标题时遇到一些问题。

我在创建标题行数组时没有遇到任何问题,但我希望能够从查询本身创建标题。

这是我用过的:

$output = fopen('php://output', 'w');


//get query data

$qs = $_GET['custom'];
$rs = mysqli_query($dbc, $qs)
or die ('Error querying database');


header('Content-Type: text/csv; charset=utf-8');
header('Content-Disposition: attachment; filename=query.csv');

$csv = fopen('php://output', 'w');

while ($row = mysqli_fetch_assoc($rs)) {

fputcsv($csv, $row);

}

fclose($csv);

我想要的是一种在查询内容之前输入选择中的行的方法(效果很好)。

我知道如果我将其放在第一个 fputcsv 行之前,这将适用于设置标题:

fputcsv($csv, array('col1', 'col2', 'col3', [etc...]  ));

但这只是因为我定义了数组中的字段。

我正在寻找的是识别查询中的列并将它们用作列标题的方法。

我一直在尝试使用查询执行某些操作,该查询仅获取列名称,然后将其作为数组提供,但我似乎无法让它工作。像这样的事情:

SELECT column_name
FROM information_schema.columns
WHERE table_schema = 'database_name'
and column_name in ($query)

其中 $query 变量与上面的 $qs 查询类似,但可惜没有运气。有谁知道如何做到这一点?提前致谢。

最佳答案

fputcsv($csv, array_keys($row)); 在开头?

关于php - mysql中自定义查询的输出列名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28773884/

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