接上一篇文章,导出一个表,或者整个数据库到Excel表

 <?php
 require_once '../../smartyConfig/smartyConfig.class.php';
 require_once '../../game/include/function.php';
 require_once '../../game/include/config.php';
 require_once '../../game/server/server.class.php';
 require_once '../../game/include/db.class.php';
 
 $smarty->setTemplate_dir(GAME_ROOT);
 $smarty->setCompile_dir(GAME_ROOT_C);
 
 $serverName=$_GET['serverName'];
 
 $tableName=$_GET['tableName'];
 $dbLink=mysql_connect($serverInfos[$serverName][1],DEFAULT_USER,DEFAULT_PASSWORD,DEFAULT_DB_NAME);
 mysql_query("set names 'gb2312'");
 mysql_select_db(DEFAULT_DB_NAME);
 $query=mysql_query("select * from ".$tableName,$dbLink);

 if(!empty($tableName))   //通过一种方法,创键excel文件
 {
  $fileName=$tableName.".xls";
  header("Content-Type: application/vnd.ms-execl;charset=gb2312");  
  header("Content-Disposition: attachment; filename=".$fileName);  
  header("Pragma: no-cache");  
  header("Expires: 0");
   
  $now_date = date('Y-m-d H:i:s');
  $title = "数据库名:".DEFAULT_DB_NAME."   表名:".$tableName."    备份日期:".$now_date;  
  
  echo iconv("utf-8","gb2312",$title."/n");
  
  $resultSum=mysql_num_fields($query);
  $fieldArray=mysql_list_fields(DEFAULT_DB_NAME,$tableName,$dbLink);
  for($i=0;$i<$resultSum;$i++)
  {
   echo mysql_field_name($fieldArray,$i)."/t";
  }
  
  echo "/n";
  
  while($resultArray=mysql_fetch_array($query))
  {
   for($i=0;$i<$resultSum;$i++)
   {
    echo $resultArray[$i]."/t";
   }
   echo "/n";
  }
 }
 else
 {
  $now_date = date('Y-m-d H-i-s');
  $folder=DEFAULT_DB_NAME.$now_date;
  mkdir($folder,0777);
  $dbLink=mysql_connect($serverInfos[$serverName][1],DEFAULT_USER,DEFAULT_PASSWORD,DEFAULT_DB_NAME);
  mysql_query("set names 'gb2312'");
  $tablesArray=mysql_list_tables(DEFAULT_DB_NAME,$dbLink);
  while ($resultArray=mysql_fetch_array($tablesArray))
  {
   $tableName=$resultArray[0];
   $file=fopen($folder."/".$tableName.".xls","a+"); 
   
   $now_date = date('Y-m-d H:i:s');
   $title = "数据库名:".DEFAULT_DB_NAME."   表名:".$tableName."    备份日期:".$now_date;
   
   $title=iconv("utf-8","gb2312",$title."/n");
   fwrite($file,$title);
   $query=mysql_query("select * from ".$tableName,$dbLink);
      
   $resultSum=mysql_num_fields($query);
   $fieldArray=mysql_list_fields(DEFAULT_DB_NAME,$tableName,$dbLink);
   
   for($i=0;$i<$resultSum;$i++)
   {
    fwrite($file,mysql_field_name($fieldArray,$i)."/t");
   }
   fwrite($file,"/n");
   
   while ($resultArray=mysql_fetch_array($query))
   {
    for($i=0;$i<$resultSum;$i++)
    {
     //$resultArray[$i]=iconv("utf-8","gb2312",$resultArray[$i]);
     fwrite($file,$resultArray[$i]."/t");
    }
    fwrite($file,"/n");
   }
  }  
  
  echo "导出成功";
 }


?>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值