個人數據庫設計爲如下這樣:javascript
個人程序代碼爲:php
<?php $action = $_GET['action']; if ($action=='export') { //導出CSV $link = mysql_connect('localhost','root','123456') or die(mysql_error()); mysql_query('set names utf8'); mysql_select_db('stu'); $result = mysql_query("select * from student order by id asc"); $str = "姓名,性別,年齡\n"; //$str = iconv('utf-8','gb2312',$str); while($row=mysql_fetch_array($result)){ $name = iconv('utf-8','gb2312',$row['name']); //中文轉碼 $gender = iconv('utf-8','gb2312',$row['gender']); $str .= $name.",".$gender.",".$row['age']."\n"; //用引文逗號分開 } $filename = date('Ymd').'.csv'; //設置文件名 export_csv($filename,$str); //導出 } function export_csv($filename,$data) { header("Content-type:text/csv"); header("Content-Disposition:attachment;filename=".$filename); header('Cache-Control:must-revalidate,post-check=0,pre-check=0'); header('Expires:0'); header('Pragma:public'); echo $data; exit; } ?> <input type="button" class="btn" value="導出CSV文件"> <script language="JavaScript" src="../jquery/jquery-1.4.2.min.js" type="text/javascript"> </script> <script type="text/javascript"> $(".btn").click(function(){ // var year = $("#year option:selected").val(); // var month = $("#month option:selected").val(); // url = '&year='+year+'&month='+month; window.location.href = 'csv.php?action=export'; }) </script>
最後實現的效果爲:java
總結:這裏之因此選擇後綴名爲".csv"格式的是由於它所存儲內容是不限制的,能夠存無數行;而「.xls」後綴名的文件最多隻能存65535行,這個根據具體應用環境而定,這個就是兩種格式不同的地方!
mysql