【发布时间】:2022-10-07 00:17:18
【问题描述】:
我可以将文件存储到数据库中,但无法获取/显示存储在数据库中的文件
文件存储在数据库中,但无法从数据库中显示
我正在使用以下代码
<?php
class file_upload extends CI_Controller
{
public function index()
{
echo \" <head>
<title>Upload Image To Database</title>
</head>
<body>
<!-- (A) HTML FILE UPLOAD FORM -->
<form method=\'post\' enctype=\'multipart/form-data\'>
<input type=\'file\' name=\'upload\' accept=\'.png,.gif,.jpg,.webp\' required/>
<input type=\'submit\' name=\'submit\' value=\'Upload Image\'/>
</form>\";
if (isset($_FILES[\'upload\']))
{
$imgname=$_FILES[\"upload\"][\"name\"];
$data[\"img_name\"]=$_FILES[\'upload\'][\'name\'];
$data[\"img_data\"]=file_get_contents($_FILES[\"upload\"][\"tmp_name\"]);
$this->db->insert(\'images\',$data);
$data=$this->db->query(\'select * from images where img_name=\"$imgname\"\');
foreach ($data->result() as $row)
{
print_r($row->img_data);
echo \"<img src=\'data:image/jpg;charset=utf8;base64, \";
echo \"base64_encode($row->img_data)\";
echo \"height=100 width=100>\";
}
}
}
}
?>
-
您不应将文件本身存储在数据库中,而应将其存储在文件系统上的路径以及它的静态 url 中。
标签: php