对于PHP来说,我是一个完整的新手,所以请提前道歉。
我试图查询我的表并返回表中的所有数据,我有以下工作只返回最后一列作为longtext字符串,我想将其用作图像来源所以它返回一个图像,这有意义吗?
try {
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $conn->prepare("SELECT * FROM `o18-reg`");
$stmt->execute();
$result = $stmt->setFetchMode(PDO::FETCH_ASSOC);
foreach(new TableRows(new RecursiveArrayIterator($stmt->fetchAll())) as $k=>$v) {
echo $v;
}
}
答案 0 :(得分:4)
首先,我想建议您不要将图像本身放入数据库中。最好将文件系统中的图像URL或绝对路径保存到数据库表中。
另外,请确保在header
图像数据时设置正确的echo
信息。
如果没有右header
,它将在客户端打印为字符串。
因此,如果图像是jpeg,则可以在使用echo
打印图像之前添加标题代码,如下所示:(如果您使用{编码图像数据,也不要忘记执行base64_decode
{1}})
base64
如果是png,那么您可以使用以下内容:
header("Content-type: image/jpeg");
echo base64_decode($my_image);