CSV下载不能在live上工作但在localhost上工作

时间:2013-01-17 04:56:41

标签: php apache drupal csv

虽然它正在使用localhost,但我在现场遇到CSV下载问题。

我已经完成了File download for csv works in local host but not when live

,但这种方法对我来说也没有用。我试过了。

这是我的代码,请看一下 -

    //Final function, called from module file.
function event_signup_download_detail($nid)
{  
    module_load_include('inc', 'signup_event', 'event_signup_view');
    $csv_output = '';
    $csv_output .= "Role,Last name,First Name,Patrol,Position,Home phone,Cell Phone,Email,Payment Date,Unit Join Date,Payment Status\n";           
    $nid = 2001;

    // add the paid users to the csv 
    $csv_output .= getPaidScoutUsers($nid);

    // get unpaid users, add them to the csv
    $csv_output .= getUnpaidUsers($nid);

    header('Content-type: "application/vnd.ms-excel"');
    header('Content-Disposition: attachment;filename=\"Registration_information.csv\"');
    echo $csv_output;
    exit; 

}

它只是在页面上输出结果。我需要CSV文件,这是假设要下载..

根据评论,我想改变我的.htaccess但事实是,下载csv已经在其他具有相同代码行的页面上工作,所以它也必须在这里工作..

我不明白,这个打印是如何终止下载开始的......

2 个答案:

答案 0 :(得分:0)

添加此内容 header('Content-type:“application / vnd.ms-excel”; charset = utf-8'); 而不是标题('Content-type:“application / vnd.ms-excel”');

答案 1 :(得分:-1)

您需要使用服务器配置强制下载。在Apache上,可以使用

在.htaccess文件中完成
 AddType application/octet-stream .csv