从数据库创建CSV文件时启用PHP错误

这种在csv上导出数据的方法以前在其他项目上也可以使用,但是我无法在此处进行此操作,因此我不确定如何为这种情况启用错误.

PHP文件创建一个逗号分隔的文件,其中包含带有单个选项卡(“ ID”)的初始行,然后应该为数据库中SELECT查询中的每个匹配项创建一行

<?PHP
session_start();
ob_start();

include('conexionbbdd.PHP');

    $file='informes/expositores_'.time().'.xls';

    header("Content-Type: application/xls");    
    header("Content-disposition: attachment; filename=$file");  
    header("Pragma: no-cache"); 
    header("Expires: 0");        

    $output = fopen($file, 'w');

    fwrite($output, chr(239) . chr(187) . chr(191)); 

    fputcsv($output, array('ID'), "\t");    

    // fetch the data
    $rows1 = MysqLi_query($con, "SELECT ex_id FROM expositores WHERE ex_id = '26'");

    // loop over the rows, outputting them
    while ($row1 = MysqLi_fetch_assoc($rows1)) {     
        fputcsv($output, $row1, "\t");        
    }

    fclose($output);
    echo $file;


ob_end_flush();   
?>

在这种特殊情况下,我已将其简化为maximu,因此,除了第一行之外,还应创建一个包含“ 26”的唯一行(我已经测试过该查询可与PHPMyAdmin一起使用,ID为26).但事实并非如此.

它只能从此第一个fputcsv方法正确创建第一行:

fputcsv($output, array('ID'), "\t");  

似乎没有其他行要提取或放置在CSV上.

由于整个PHP文件的目的是创建CSV文件,因此不会显示错误,因为它不会在新窗口中打开.

输出

enter image description here

解决方法:

为了解决这个问题,您将需要能够查看错误.打开<?PHP标签error_reporting(E_ALL);之后,您可以查看错误日志或在文件顶部添加错误报告. ini_set('display_errors',1);

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...