我正在创建一个csv文件来下载mysql表data.it在localhost中工作正常,但在实时服务器上它不能正常工作。下载空csv文件。这是我的php代码:
ob_start();
include ("../DB/db.php");
$output = "";
$table = "";
$sql = mysql_query("SELECT * FROM Account");
$columns_total = mysql_num_fields($sql);
for ($i = 0; $i < $columns_total; $i++) {
$heading = mysql_field_name($sql, $i);
$output .= '"'.$heading.'",';
}
$output .="\n";
while ($row = mysql_fetch_array($sql)) {
for ($i = 0; $i < $columns_total; $i++) {
$output .='"'.$row["$i"].'",';
}
$output .="\n";
}
$filename = "Account_details.csv";
header('Content-type: application/csv');
header('Content-Disposition: attachment; filename='.$filename);
echo $output;
exit;
答案 0 :(得分:0)
您的mysql_query
函数正在返回传递给mysql_num_fields的错误。
您应确保您的实时服务器上存在该表。
请记住,数据库,表和可能的列名在Linux / Mac(Unix)上区分大小写,并且在Windows上不区分大小写。这是因为MySQL使用文件/文件夹来命名表和数据库。