为什么CodeIgniter附加页面源的Excel CSV帮助器?

时间:2012-08-29 13:09:16

标签: php codeigniter pyrocms

我在PyroCMS中为CodeIgniter使用Excel CSV帮助程序,它工作正常,除了它将页面的html源附加到文件的末尾。

以下是页面开头html后面的最后一行;

18,10629,"2010-03-06 15:25:14","2010-03-06 15:43:01",905,6.4,53.7,9410,Server01,"2010-03-06 15:43:46",25.5
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <!-- Meta data -->
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

在页面的html结束之前,它会继续下去。

这是我在控制器中对它的调用;

if(isset($_POST['csv'])){
$unlmited_result_array = $this->db->get()->result_array();
$top_row[0] = array_keys($unlmited_result_array[0]);
$toto = array_merge($top_row, $unlmited_result_array);
array_to_csv($toto, 'toto.csv');
}

我正在使用以下表单来调用它;

<?php
echo form_open('cip')
. form_hidden('Trucknumber', $_POST['Trucknumber'])
. form_hidden('VechicleRegistration', $_POST['VechicleRegistration'])
. form_hidden('from-date', $_POST['from-date'])
. form_hidden('to-date', $_POST['to-date'])
. form_submit('csv', $this->lang->line('cip:CSV'))
. form_close();
?>

1 个答案:

答案 0 :(得分:3)

在控制器中,显示array_to_csv()后,添加一个返回。它将阻止加载视图。

另一种选择:使用控制器方法显示表单,使用另一种方法显示CSV。