我的目标是获得一个数据库转储,其中包含二进制图像数据到实际图像或网页中的一个显示。我有一个数据库转储,它使用示例https://gist.github.com/marr/d22b418f5744d56dcb69创建数据并将数据插入到附件表中。
来自单个filedata
单元格的数据已复制到foo.jpg
中,因此我可以在其上运行file
,只会将文件列为"数据"。编辑:将选择更改为SELECT BINARY filedata ...
后,我能够获得file
命令将其识别为jpg
$ file foo.jpg
foo.jpg: JPEG image data, JFIF standard 1.01
我如何编写脚本来输出文件系统上的文件或用php或rails显示它们?
典型的PHP不起作用:
mysql_connect("127.0.0.1","root","");
mysql_select_db("foo");
$imageId = intval($_GET["id"]);
$query = mysql_query("SELECT BINARY filedata FROM attachment WHERE attachmentid = ". $imageId);
$row = mysql_fetch_array($query);
$mime = 'image/jpeg';
header("Content-Type: $mime");
header("Content-Disposition: inline");
echo $row["filedata"]; //blank