我不明白我一直在阅读的文档。谁能在这里解释如何做到这一点?
我有一个HTML链接转到函数showFile()。有两个获取,一个id,它是文件名,一个ext,即文件的扩展名。(只有扩展名为pdf,jpg和gif)我正在使用codeigniter framwework btw。
我读了有关标题的内容,但是当我尝试它时,它只是下载了文件。任何帮助将不胜感激。
到目前为止的功能---------
public function showFile () {
$fileId = $this->input->get('id');
$fileExt = $this->input->get('ext');
}
答案 0 :(得分:3)
HTML中的这类内容:
<a href="downloadfile.php?filesrc=blah.pdf" target=_new>
Click here to download blah.pdf</a>
当然,href必须在PHP中echo
。
<a href="downloadfile.php?filesrc=<?php echo $filepath ?>" target=_new> ... </a>
哦,downloadfile.php只会有一个header('...');
重定向到该文件。
答案 1 :(得分:3)
class Files extends CI_Controller{
public function show_file($id, $ext){
$file_location = '';
switch($ext){
case 'pdf':
$file_location = 'location-to_pdf_files'; // store as constant maybe inside index.php - PDF = 'uploads/pdf/';
//must have PDF viewer installed in browser !
$this->output
->set_content_type('application/pdf')
->set_output(file_get_contents($file_location . '/' . $id . '.pdf'));
break;
//jpg gif etc here...
}
}
}
-
$route['view/(:any)/(:any)'] = 'files/show_file/$1/$2';
-
<a href="<?php echo site_url('view/picture/pdf');?>" rel="nofollow" target="_blank">Some_file<a/>