【发布时间】:2011-06-30 00:42:36
【问题描述】:
我正在尝试将上传的图像存储在数据库中。但是,图像不会显示,当我在图像列中查看带有 phpmyadmin 的表格时,我会看到 [BLOB - 20B] 之类的东西,而不是它应该具有的实际大小。
显示脚本工作正常,因为我通过 phpmyadmin 而不是我的上传脚本插入了图像,并且显示正常。
我的表格:
<form id="productForm" action="index.php" method="post" enctype="multipart/form-data">
<input type="hidden" name="product_id" value="' . $values['product_id'] . '" />
<input type="file" name="image" />
</form>
处理代码:
$clean['image'] = mysqli_real_escape_string($dbc, file_get_contents($_FILES['image']['tmp_name']));
mysqli_query($dbc, "
INSERT INTO product_images (product_id, mime, image)
VALUES ('{$clean['last_product_id']}', '{$clean['mime']}', '{$clean['image']}')
");
我省略了所有不相关的内容,因为其他事情似乎运行良好。
谢谢
【问题讨论】:
-
[BLOB - 20B]是 phpMyAdmin 的 BLOB 数据占位符。显示图片有问题吗? -
在我看来,它告诉我只存储了 20 个字节!这些图像不显示。我从 phpmyadmin 手动添加的那个说 92KB 什么的,显示正常。
-
用一些代码更新了我的答案以尝试...
标签: php mysql database image store