我需要幫助來找出為什么以這種方式匯出以及如何解決它?
我的代碼以這種方式匯出:

目標是得到這個:

代碼:
include 'settings.php';
if(isset($_POST["export"]))
{
$filename = "adat_" . date('Y-m-d') . ".csv";
$delimiter = ",";
header('Content-Type: text/csv');
header('Content-Disposition: attachment; filename="' . $filename . '";');
$output = fopen("php://output", "w");
fputcsv($output, array('barcode', 'name', 'status', 'log_in', 'log_out'), $delimiter);
$query =
"SELECT userlog.barcode, workers.name, workers.status, userlog.log_in, userlog.log_out
FROM userlog
INNER JOIN workers
ON workers.barcode=userlog.barcode";
$result = mysqli_query($conn, $query);
while($row = mysqli_fetch_assoc($result))
{
fputcsv($output, $row);
}
fclose($output);
}
?>
uj5u.com熱心網友回復:
代碼可以,匯出也可以,但是需要設定“,”分隔符為Google Sheet或者Excel。
如果您使用 Google Sheet,不要從 CSV 復制文本,請匯入,然后按自動檢測分隔符。
uj5u.com熱心網友回復:
這就是問題的解決方案!謝謝你的幫助!
include 'settings.php';
if(isset($_POST["export"]))
{
$sql_query = "SELECT userlog.barcode, workers.name, workers.status, userlog.log_in, userlog.log_out
FROM userlog
INNER JOIN workers
ON workers.barcode=userlog.barcode";
$resultset = mysqli_query($conn, $sql_query) or die("database error:". mysqli_error($conn));
$developer_records = array();
while( $rows = mysqli_fetch_assoc($resultset) ) {
$developer_records[] = $rows;
}
$filename = "phpzag_data_export_".date('Ymd') . ".xls";
header("Content-Type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=\"$filename\"");
$show_coloumn = false;
if(!empty($developer_records)) {
foreach($developer_records as $record) {
if(!$show_coloumn) {
// display field/column names in first row
echo implode("\t", array_keys($record)) . "\n";
$show_coloumn = true;
}
echo implode("\t", array_values($record)) . "\n";
}
}
exit;
}
?> ```
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/352671.html
上一篇:搜索不回傳查詢
