これで空になり、いくつかの洞察を使用できます。
column_names
特定の(列データではない) のみを選択して、CSV ファイルのヘッダーとして設定しようとしています。
現在、すべての列名をプルすることしかできません
$result = mysql_query("SHOW COLUMNS FROM ".$table);
問題は、すべての列名を取得し、特定の列のデータのみが必要なことです。データ値を取得するために、このクエリは完全に機能しています:
$values = mysql_query("SELECT ".$columns." FROM ".$table." WHERE channel_id=26");
$columns
たとえば、に一覧表示した列の列名のみを選択または表示するにはどうすればよいですか?
編集- より多くのコンテキストを提供するために、ここに完全な PHP を追加しています。7行目は私の問題です。
<?php
$table = 'exp_channel_data'; // table we want to export
$columns = 'entry_id, field_id_26, field_id_27, '; // only the columns we want to show
$file = 'registrations-from-web'; // csv name.
$result = mysql_query("SHOW COLUMNS FROM ".$table);
$count = mysql_num_rows($result);
$csv_output = "";
if ($count > 0)
{
while ($row = mysql_fetch_assoc($result))
{
$csv_output .= $row['Field'].", ";
}
}
$csv_output .= "\n";
$values = mysql_query("SELECT ".$columns." FROM ".$table." WHERE channel_id=26");
while ($rowr = mysql_fetch_row($values))
{
for ($j=0; $j<$count; $j++)
{
$csv_output .= $rowr[$j].", ";
}
$csv_output .= "\n";
}
$filename = $file."_".date("d-m-Y_H-i",time());
header("Content-type: application/vnd.ms-excel");
header("Content-disposition: csv" . date("Y-m-d") . ".csv");
header( "Content-disposition: filename=".$filename.".csv");
print $csv_output;
exit;
?>