【问题标题】:PHP echo uploaded image contentPHP echo 上传图片内容
【发布时间】:2020-09-03 06:54:14
【问题描述】:

我正在尝试使用此代码从上传的文件中回显图像内容:

<?php
$imgContent = addslashes(file_get_contents($_FILES['image']['tmp_name']));
header("Content-type: image/png");
echo $imgContent;
?>

但它只显示一个小的空方块。我必须从 mysql 上传并获取一个 BLOB 字段才能在浏览器上显示,但它没有正确保存。

【问题讨论】:

  • 为什么要加斜杠??
  • 如果你addslashes()你可能会损坏图像文件编码
  • 在进行header("Content-type: image/png");之前,您不会检查上传的图片是否为.png
  • 查看用于将图像保存到数据库的代码可能很有用。以防您在保存之前损坏了那里的文件

标签: php mysql image file-upload


【解决方案1】:

正如 Lars Stegelitz 和 RiggsFolly 所说,我通过在文件内容上添加 addslashes 损坏了文件。通过删除它,我可以看到图像被返回。

我编写了那个简单的脚本只是为了测试我是否正确获取了图像内容。在实际代码中,我正在检查文件类型。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-12
    • 2011-03-16
    • 2013-04-29
    • 2012-11-08
    • 2014-07-05
    • 1970-01-01
    相关资源
    最近更新 更多