使用php / javascript动态导出mysql表到所有excel版本......是否可能?

时间:2014-01-05 22:16:32

标签: php mysql export-to-excel export-to-csv

<?php
 $database="picinfo";
$table="passed_searches";
mysql_connect("localhost","root","root");
mysql_select_db("picinfo");
$result=mysql_query("select * from $table");
$out = '';
$fields = mysql_list_fields('search_engine',$table);
$columns = mysql_num_fields($fields);
for ($i = 0; $i < $columns; $i++)
{
$l=mysql_field_name($fields, $i);
$out .= ' "' .$l. '" ,';
}
$out .="\n";
while ($l = mysql_fetch_array($result)) 
{
 for ($i = 0; $i < $columns; $i++)
 {
 $out .='  " ' .$l["$i"]. ' " ,';
 }
 $out .="\n";
}
$f = fopen ('export.csv','w');
fputs($f, $out);
fclose($f);
$filename = date("Y-m-d_H-i",time());
header('Content-Type: application/vnd.ms-excel;'); 
header("Content-type: application/x-msexcel");          
header( "Content-disposition: filename=".$filename.".csv");
readfile('export.csv');
?>

此代码导出我的mysql数据库(phpmyadmin)中的表..问题是此代码仅在excel 2010中导出数据,当我尝试将此代码导出到2013时它不起作用。我想要更改我的代码或找到一种方法导出到excel的所有版本,或者在每个版本中放入数据,或者给用户选择一个选项。

例如,如果要设置excel按钮,则查看其他按钮,例如导出到excel 2007,导出到excel 2008,导出到excel 2008,导出到excel 2009 ....导出到excel 2013.Please help,这是非常的对我来说是重要的......我为毕业做这件事,这只是我所要做的一切的一小部分。

提前致谢。

2 个答案:

答案 0 :(得分:0)

这是我过去使用的插件。

它具有许多功能,但可以随时工作并且非常可重复使用

http://phpexcel.codeplex.com/

答案 1 :(得分:0)

所有版本的Excel都支持CSV文件。

如果导出CSV文件,请使用相应的MIME类型:

header('Content-Type: text/csv');

仅对header()

使用一个 Content-Type