我知道如何使用PHP导出为CSV来查询mySQL并填充CSV。但是,是否可以让用户选择他们想要的列并相应地更改SQL查询?如何使用PHP将变量列导出到CSV文件?
我已经建立了与数据库的连接,增加我的查询是:
$query = sprintf("SELECT x, y, z from a");
$result = mysql_query($query, $conn) or die(mysql_error($conn));
header('Content-Type: text/csv');
header('Content-Disposition: attachment;filename=export.csv');
$row = mysql_fetch_assoc($result);
if ($row)
{
echocsv(array_keys($row));
}
while ($row)
{
echocsv($row);
$row = mysql_fetch_assoc($result);
}
function echocsv($fields)
{
$separator = '';
foreach ($fields as $field)
{
if (preg_match('/\\r|\\n|,|"/', $field))
{
$field = '"' . str_replace('"', '""', $field) . '"';
}
echo $separator . $field;
$separator = ',';
}
echo "\r\n";
}
是的,现在没有更多的细节,这是你得到的。 – 2012-02-08 03:15:57
是的,这是可能的。在这种情况下,您必须以编程方式生成特定的SQL语句。 – 2012-02-08 03:16:40
如何以编程方式生成SQL语句? – codingNewbie 2012-02-08 03:25:42