我观看了有关如何执行此操作的教程,但仍然无法将映像作为Blob上传到mysql。
我要允许用户选择图像。
<form action="includes/submitImage.inc.php" method="POST" enctype="multipart/form-data">
<input type="file" name="image1">
<button type="submit" name="submit">Save Image</button>
</form
在提交时,应将此图像发送到mysql db并将其另存为blob。 db字段名称为“ selectedImage”。
submitImage.inc.php的内容:
<?php
include_once 'dbh.inc.php';
$imageData1 = mysqli_real_escape_string(file_get_contents($_FILES['image1']['tmp_name']));
$imageType1 = mysqli_real_escape_string($_FILES['image1']['type']);
$sql = "UPDATE myDbTable SET selectedImage='$imageData1' WHERE id='1';";
mysqli_query($conn, $sql);
header("Location: ../home?edit=success");
exit();
?>
这已被简化以简化问题。检查是否存在id = 1的行。代码完全可以在所有条件下运行,并且URL包含预期的“ home?edit = success”。所有其他字段(此处未包括)均按预期更新其值,但记录在selectedImage字段下显示“ [BLOB-0字节]”。
有什么想法吗?为了简化起见,我省略了与图像无关的任何代码,并且更改了字段名称。非常感谢您的时间和帮助。
答案 0 :(得分:0)
直接将图像保存到数据库不是一个好主意。将上传的图像文件移动到安全目录中,然后将其路径或名称保存在数据库中,并通过从数据库中读取保存的路径来检索它。如果您想做坏事并将图像保存到数据库 首先确保dbh.inc.php文件正确连接到数据库。启用调试模式以查看可能的错误消息。