0
我有一個函數根據變量創建不同的文件類型,我讓它生成一個XML,但是當我單擊指向該頁面的鏈接時(<a href="/asset/1/xml">XML</a>
),什麼都沒發生。如果我點擊在新標籤頁中打開它,或者在標題欄中手動輸入url,那麼文件將按我的需要下載。僅當在新窗口/標籤頁中打開時才文件下載
function asset($asset_id, $display = ''){
$this->load->model('model_asset');
$asset = $this->model_asset->get_by_id($asset_id, true);
switch($display) {
case 'xml':
$this->load->helper('array_to_xml_helper');
$asset_arr = get_object_vars($asset);
$filename = $asset->title .'-'. $asset->subtitle . '.xml';
$xml = Array2XML::createXML('asset', $asset_arr);
header ("Content-Type:text/xml");
header('Content-Disposition: attachment; filename="'. $filename .'"');
echo $xml->saveXML();
break;
}
}
如何使動態生成的文件,這項工作(我使用arraytoxml效用函數,我發現here)
您是否輸出標題以外的任何內容? – wgcrouch 2012-08-12 20:39:50
哎呦..看起來我沒有發佈所有我想要的代碼。是的,我是:p – Damon 2012-08-12 20:41:06
您可以修改鏈接,以便它會在新窗口中打開。 ''應該這樣做。這只是繞過這個問題,所以在我看來這不是一個真正的解決方案。 – Zombaya 2012-08-13 10:11:57