如何下载现有的PDF,Excel和Txt文件在Codeigniter中?

我上传了服务器上的文件,我想下载button点击。 但是我用下面的代码尝试过,它只能在图像文件上工作。 不在其他扩展名,如pdf,xlsx,txt,docx等。 我应该怎么做,下载所有的扩展。

这是我的查看代码。

<a href="{base_url('CustomerInformDetailEditController/fileDownload/')}{$row->file_path}{$row->file_name}">Download</a> 

这是我的控制器代码。

 function fileDownload(){ $this->load->helper('download'); $filename = urldecode($this->uri->segment(5)); $filepathName = file_get_contents(base_url(). $this->uri->segment(3) . "/" . $this->uri->segment(4) . "/" . $filename); echo $filepathName; force_download($filename, $filepathName); } 

英语不是我的母语。

我想,如果你的href链接是正确的,如果你像这样添加下载attribut到你的视图,它的工作原理。

 <a href="{base_url('CustomerInformDetailEditController/fileDownload/')}{$row->file_path}{$row->file_name}" download>Download</a> 

请参阅有关下载attribut的w3c文档 。

如果我的问题不起作用,请查看href的一面。

如果你有很多文件要pipe理,我build议在bdd中创build一个“document_model”存储文件信息,并创build一个upload_document库来处理它们。

如果您阅读有关它的文档 ,您会看到第二个参数是数据文件内容而不是filePathName,但是,您应该重命名您的variables。