2017-03-18 32 views
0

我想要得到SQL查询的结果CSV格式。我正在使用PHP。我的代码对结果工作正常,但我无法获得列名作为标头。请帮助从PHP下载CSV文件的结果在PHP中

@ $con = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_DATABASE); 
if($con->connect_error) 
    die("Unable to connect to database : ".$con->connect_error); 

$query = "SELECT * FROM User"; 
$result = $con->query($query); 
$fp = fopen('php://output', 'w'); 
if ($fp && $result) { 
    header('Content-Type: text/csv'); 
    header('Content-Disposition: attachment; filename="export.csv"'); 
    while ($row = $result->fetch_array(MYSQLI_NUM)) { 
     fputcsv($fp, array_values($row)); 
    } 
    die; 
} 

回答

-1

  if (!empty($_POST["tableName"])): 
 
      if ($columData = $db->cPanelAccess("SHOW COLUMNS FROM ".$_POST["tableName"])): 
 
       ?> 
 
       <tr class="header row"> 
 
       <?php 
 
       while ($columName = $columData->fetch_assoc()): 
 
       ?> 
 
        <td class="fieldNames"><?php echo $columName["Field"]; ?></td> 
 
       <?php 
 
       endwhile; 
 
       ?> 
 
       </tr> 
 
       <?php 
 
      endif; 
 
      endif;

我用类似的东西打印的表头

+1

为什么所有的HTML标记? OP正在创建一个csv文件 –

+0

@Mark这是我网站的直接片段,这就是为什么。我假设OP知道要为他提取有用的部分 –

+0

我想下载CSV文件。只是它。我的代码工作正常,但我没有获取SQL表的列名作为标题。 –