【发布时间】:2011-11-29 21:24:35
【问题描述】:
我有一个脚本,它从 MySQL 数据库表中获取数据并创建一个新的 .csv excel 文档并将所有数据插入其中。现在请注意,此脚本会创建一个新的 csv 文件。
部分脚本:
$result = mysql_query("SHOW COLUMNS FROM ".$table."");
$i = 0;
if (mysql_num_rows($result) > 0) {
while ($row = mysql_fetch_assoc($result)) {
if($row['Field'] != 'id'){
$csv_output .= $row['Field']."; ";
$i++;
}
}
}
$csv_output .= "\n";
$values = mysql_query("SELECT title, firstname, initials, lastname, address, address_nr, emailaddress, zipcode, city, phone, mobile, website FROM ".$table." WHERE addressbook = '$addressbook_id'");
while ($rowr = mysql_fetch_row($values)) {
for ($j=0;$j<$i;$j++) {
$csv_output .= $rowr[$j]."; ";
}
$csv_output .= "\n";
}
$filename = $file."_".date("Y-m-d_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;
现在问题来了。一家需要这些数据的公司已经制作了一个 .xlsx Excel 文件,其中包含他们需要的不可见列,而且这些列已经有不同的名称,并且该文件有两个不同的选项卡。一个是文本,一个是数据应该进入的地方。
问题 1:如果我将此文件上传到我的网络服务器,如何让脚本使用此文件而不是创建一个新文件?
问题 2:如何将其保存为 .xlsx 文件而不是 .csv?
问题 3:工作表中有 2 个选项卡。如何将数据插入到名为“2.data”的第二个选项卡中?
有什么想法吗?
【问题讨论】: