将文件添加到joomla

时间:2011-12-22 15:35:21

标签: php jquery ajax joomla phpexcel

你好我正在使用joomla,我正在尝试创建一个用户可以下载当前显示的表的csv或excel文件的选项。

我正在尝试使用PHPExcel来创建文件。 我创建了一个export.php文件:

    {
    $objXLS = new PHPExcel();

header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); 
header("Content-Type: application/force-download");
header("Content-Type: application/octet-stream");
header("Content-Type: application/download");;
header("Content-Disposition: attachment;filename=File.xls"); 
header("Content-Transfer-Encoding: binary ");


    $objSheet = $objXLS->setActiveSheetIndex(0);
    //$objSheet->setCellValue(cell, value);
    $objSheet->setCellValue('A1', '1');
    $objSheet->setCellValue('A2', '2');
    $objSheet->setCellValue('A3', '3');
    $objSheet->setCellValue('A4', '4');
    $objSheet->setCellValue('A5', '5');


    $objSheet->setCellValue('B5', date('H:i:s'));

    $objXLS->getActiveSheet()->getColumnDimension("A")->setAutoSize(true);
    $objXLS->getActiveSheet()->getColumnDimension("B")->setAutoSize(true);

    $objXLS->getActiveSheet()->setTitle('Test Stats');

    $objXLS->setActiveSheetIndex(0);


    $objWriter = PHPExcel_IOFactory::createWriter($objXLS, 'Excel5');
    //$objWriter->save('php://output');
    exit;

}
}

该文件获取表格信息,将其插入Excel工作表并输出以供下载,但由于joomla限制,我无法访问此文件。

当我尝试将代码输入到我的模型并调用它时,出来的文件是整个页面,或者文件在网站页面中打印为垃圾。

如何格式化访问此文件,以便我可以在新选项卡中打开它。 或者是否有更简单的方法使用AJAX或Jquery将此信息导出到excel文件或csv?

谢谢

2 个答案:

答案 0 :(得分:1)

你的问题很可能是Joomla框架会输出一些额外的HTML,这个特殊情况不需要;我认为你要做的事情与this question中的问题非常相似。要点是,您必须在控制器中创建自己的操作,并在网址中使用其他format=raw参数。

答案 1 :(得分:1)

看一下这个链接。他们完全按照您的要求PHPExcel & Joomla