我检索图像的PHP代码没问题,但没有显示图像

时间:2018-04-06 13:43:33

标签: php

这是我的php代码的getImage.php页面

<?php

    if(isset($_GET['email'])){

        $con = mysqli_connect("localhost", "root", "") or die(mysqli_error($con));
        mysqli_select_db($con,"ajmal") or die(mysqli_error($con));

        $sql = mysqli_query($con,"SELECT image FROM users WHERE email='$email'");

        while ($row = mysqli_fetch_array($sql)) {
            $imageData = $row["image"];
        }

        header("Content-type: image/jpeg");
        echo $imageData;
    }
    else{
        echo "Error";
    }
?>

这是我的img标签,我使用getImage.php页面

<img src="getImage.php?email = $email" width="100" height="100">

这是输出

enter image description here

它有什么问题,它的解决方案是什么?

1 个答案:

答案 0 :(得分:2)

您是否检查过HTML的生成方式?

<img src="getImage.php?email=<?php echo $email ?>" width="100" height="100">

1)在您的脚本中,如果电子邮件丢失,您应该在响应无效时设置错误代码:

else {
    http_response_code(400);
    echo 'E-mail missing';
    exit;
}

2)您的脚本容易SQL injection attack!尽快使用MySQLi prepared statements