我是从一些教程阅读如何我的图片上传到数据库二进制而不是把他们的服务器本身上拉BLOB的图像数据,以及我得到它像这样工作:从MySQL在PHP
PHP:
$image = chunk_split(base64_encode(file_get_contents($tmpfile)));
mysql_query("INSERT INTO images (`img_location`, `caption`, `user`, `genre`, `when`) VALUES ('$image', '$caption', '$id', '$genre', '$when')");
我的问题是怎么做的,你现在可以从数据库中提取它,我读过这样做的几种方法,尝试所有这些,也无法弄明白,我没有得到一个MySQL错误,这里是我如何尝试它:
$get_pics = mysql_query("SELECT * FROM images WHERE user='$id' ");
while($get_pics2 = mysql_fetch_array($get_pics))
{
$sixfour_enc = base64_decode($get_pics2['img_location']);
$new .= "<img src=\"".$sixfour_enc."\" >";
}
This works ... kind of,发生了什么事是它打印出IMG标记中的原始二进制文件。
我如何得到这个再编译成一个可读的图像?另外,是在图像存储在数据库愚蠢?我应该做我平常做的事,并将它们存储在服务器上?
谢谢 -Mike
这是完全有道理的,在回顾性能打击之后,我回到了原来的做事方式,但我只是抛出这个看看它是否有效,而且做得非常好!谢谢你,先生! – user1053263 2012-03-10 11:49:54