File_get_contents():无法打开流:连接被拒绝



我正在尝试下载一个以前上传的文件,表单数据库和php代码点火器中的上传文件夹。我正在使用下面的代码,但正在下载空文件。

controller.php

public function downloadFile($incidents_id)
{

$file = $this->incidents_model->getfile($incidents_id);
//echo $file; die;
$this->load->helper('download');
$path = file_get_contents(base_url()."uploads/".$file); //(the error shows on this line)
// echo $path; die;
$name = $file; // new name for your file
// echo $name ; die;
force_download($name, $path); // start download`

}

事故_模型.php

function getfile($Incident_id )
{
$file = $this->db->select('file');
$this->db->from('incidents');
$this->db->where('incidents_id' , $Incident_id );
$query =  $this->db->get();
//  return $query->row();
if ($query->num_rows() > 0) {
return $query->row()->file;
}
return false;

}

view.php

<div class="form-group col-md-4">
<a href="<?=base_url('admin/incidents/downloadFile/' .$incidents->incidents_id)?>">Download file </a>
</div>

所以运行此代码会下载一个空文件。

echo$文件;死亡显示保存在数据库和上传文件夹中的文件名

echo$path;死亡生成错误:严重性:警告

消息:文件集内容(http://localhost:8080/ticketing_tool_v2/uploads/Screenshot2021-03-04下午5.59.38(:无法打开流:连接拒绝

文件名:admin/Incidents.php

线路编号:380

查看file_get_contents的文档,您会发现有许多不同的方法可以使用它。出于您的目的,您需要允许到文件系统的入站连接。

为了更好地进行未来验证,您可以使用CodeIgniter文件帮助程序https://codeigniter.com/userguide3/helpers/file_helper.html

从路径读取文件之前,请检查路径是否指向有效文件。

public function downloadFile($incidents_id) {
try {
$this->load->helper('download');
$file = $this->incidents_model->getfile($incidents_id);

$data = file_get_contents(base_url("uploads/" . $file));
$name = $file; // new name for your file

force_download($name, $data); // start download`

} catch (Exception $e) {
//exception handling code goes here
print_r($e);
}
}

相关内容

  • 没有找到相关文章

最新更新