簡體   English   中英

使用PHP將SQL表導出為CSV格式

[英]Export SQL table to CSV format with PHP

我嘗試使用此解決方案將數據庫中的數據導出為CSV,並且可以正常工作,但所有數據均以一個冒號導出。 我想像表格數據庫中的CSV一樣組成我。 這段代碼有什么問題?

<?php

// Database Connection

$host="localhost";
$uname="root";
$pass="";
$database = "a2zwebhelp"; 

$connection=mysql_connect($host,$uname,$pass); 

echo mysql_error();

//or die("Database Connection Failed");
$selectdb=mysql_select_db($database) or 
die("Database could not be selected"); 
$result=mysql_select_db($database)
or die("database cannot be selected <br>");

// Fetch Record from Database

$output = "";
$table = ""; // Enter Your Table Name 
$sql = mysql_query("select * from $table");
$columns_total = mysql_num_fields($sql);

// Get The Field Name

for ($i = 0; $i < $columns_total; $i++) {
$heading = mysql_field_name($sql, $i);
$output .= '"'.$heading.'",';
}
$output .="\n";

// Get Records from the table

while ($row = mysql_fetch_array($sql)) {
for ($i = 0; $i < $columns_total; $i++) {
$output .='"'.$row["$i"].'",';
}
$output .="\n";
}

// Download the file

$filename = "myFile.csv";
header('Content-type: application/csv');
header('Content-Disposition: attachment; filename='.$filename);

echo $output;
exit;

?>

如果使用“ \\n ”作為行分隔符並在ie notepad.exe中打開該文件,則該文件將無法正確識別為“回車換行符”,並且整個文件似乎只是“大一行”,但實際上不是!

您可以使用“ \\r\\n ”終止行,以防止出現這種情況。

為了使它可以被Excel自動識別,請使用; 作為字段分隔符代替,

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM