2017-09-27 15 views
0

以下はボタンを押すとExcelシートをエクスポートするコードです。エクスポート時に列名を変更すると、ExcelでExcelに変換されます

私はプライバシーのためにいくつかのコードを削除しました。あなたが見つけたコンマや何かが間違っている場合は無視してください。おかげ

if(isset($_POST['export'])) 
{ 
$filename = "DEVICE_OUTPUT_DETAIL_$dvc.csv"; 
$fp = fopen('php://output', 'w'); 
$query = "SELECT `DATE`,`DC_VOLTAGE`,`DC_CURRENT`,`PVPANEL_KWH`,`PUMP_AMP`,`PUMP_VOLTAGE`,`PUMP_KW`,`PUMP_FREQ` 
    FROM wp_inverterdata where DEVICE_ID = '$dvccid'"; 

$result = mysql_query($query); 

for($i=0;$i<=7;$i++) 
{ 
    $header[] = mysql_field_name($result, $i); 
} 

header('Content-type: application/csv'); 
header('Content-Disposition: attachment; filename='.$filename); 
fputcsv($fp, $header); 

$query12 = "SELECT 
`DATE`,`DC_VOLTAGE`,`DC_CURRENT`,`PVPANEL_KWH`,`PUMP_AMP`,`PUMP_VOLTAGE`,`PUMP_KW`,`PUMP_FREQ` 
FROM wp_inverterdata device_id = '$dvccid'"; 
$result12 = mysql_query($query12); 

while($row12 = mysql_fetch_row($result12)) { 
    fputcsv($fp, $row12); 
} 
exit; 
} 

問題perfectly.but作業このコードは、データが示されているページであるが、私は「モーター」言葉の代わりに、表の見出しで「PUMP」を使用しています。データベース列名はPUMPで始まります。 Excelでは、PUMPではなくMOTOR列名を変更する方法はありますか。

上記のコードでは、次のような出力が得られます enter image description here PHPを使用してこのExcelで取得した列名を変更することはできますか?

+0

'new_column_nameとしてold_column_name選択し、..' –

答えて

1

たとえば、選択クエリで列を変更することができます。 'DATE' 日付として

$query = "SELECT `DATE` as date,`DC_VOLTAGE` as DCVOLT,`DC_CURRENT` as DCCurr,`PVPANEL_KWH`,`PUMP_AMP`,`PUMP_VOLTAGE`,`PUMP_KW` as MotorKW,`PUMP_FREQ` as MotorFREQ 
    FROM wp_inverterdata where DEVICE_ID = '$dvccid'"; 

よろしく、

+0

Thanks.itとてもいいsolution.dataも示したが、 "未定義のヘッダー" のエラーとputcsv(と)は、パラメータ2が配列 – TarangP

+0

になることを期待しています。fputcsv($ fp、explode( '、'、$ header));これは$ headerを配列として渡します –

1

あなたは自分のエクセルのタイトルが、データベースの列名と異なるようにしたい場合はときに、あなたはちょうどので、例

SELECT column_name(s) 
FROM table_name AS alias_name; 

の別名であるSQLクエリでASステートメントを使用することができますあなたが望むものを持っているあなたのレポートを作成してください。 これがうまくいきたいです