这是我的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">
这是输出
它有什么问题,它的解决方案是什么?
答案 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。