我正在尝试将图像插入到我的数据库中。我已经阅读了几篇文章,我显然做错了。我知道列数据类型需要是图像的 blob。我已经做到了。
我的表单如下所示:
<form id="Dev_test" name="Dev_test" method="post" action="<?php echo htmlspecialchars($_SERVER['PHP']);?>" enctype="multipart/form-data">
<input type="file" name="call_file" id="call_file">
<input type="submit" name="submit" id="submit" value="SUBMIT">
</form>
在这里我看到了如何执行此操作的多种变体,我什至看到一篇帖子说这可能是不可能的。
$query = "INSERT INTO `******`.`******` (img) values ('{$_POST['file']}')"
我知道上面说的不对。
所以我的问题如下,$_POST['file'] 没有发布的原因是什么,是否有更好的方法将图像插入我的数据库?仅供引用,我知道将图像直接插入数据库并不是最有效的方法,还有其他通过引用文件路径的方法。
最佳答案
你要用的是php的$_FILES
而是超全局的。
$content = file_get_contents($_FILES['call_file']['tmp_name']);
你可能想对 $content
或类似的东西进行病毒检查。
我还建议您将文件存储在系统上而不是作为数据库中的 blob,而是存储文件的路径。
关于php - 将图像插入数据库并编码 ="multipart/form-data",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18662651/