我正在使用脚本来调整图像大小。我好像得到了一个错误:
错误:未指定图像
可能是因为脚本中的这段代码(image.php):
if (!isset($_GET['image']))
{
header('HTTP/1.1 400 Bad Request');
echo 'Error: no image was specified';
exit();
}
以下是我正在做的事(profile.php):
$your_image = $row['Image'];
$path_to_image = $row['PortraitPath'];
$width = 100;
$height = 100;
echo "<img src=\'/image.php/{$your_image}?width={$width}&height={$height}&cropratio=1:1&image={$path_to_img}\' alt=\'Alt text goes here.\' />";
因此,我正在从MySQL表中读取$your_image
和$path_to_image
,然后将其放入img source
。如上所述,显然,图像没有设置,这就是我得到第一个错误的原因。我没有得到的是,实际上甚至可以使用我的img src
代码设置图像?我不是只是显示实际图像吗?那么如果简单地显示图片,如何设置图像呢?谢谢。
答案 0 :(得分:0)
图片的URl包含?foo=bar&this=that&image=path
。这些变量将传递给$ _GET数组中的image.php脚本。
答案 1 :(得分:0)
如果你想要一个php文件而不是一个图像,你需要告诉你的php文件输出将是一个图像。 您可以使用php header()函数执行此操作,如下所示:
header('Content-type: image/jpeg');
以下是一些参考:php header function
关于你所指的地址,有点奇怪吗?你在.php之后有一个斜杠,这表示你正试图访问某个文件夹...你是否测试了这个网址,看看屏幕上是否输出了真实的图像?
希望这可以帮助你=)
答案 2 :(得分:0)
作为警告,在profile.php
的代码中,我看到了这个片段:
image={$path_to_img}
根据您处理$_GET['image']
值的方式,这可能会导致RFI漏洞。用户可以使用自己的“图像”路径向image.php
伪造GET请求。
答案 3 :(得分:0)
我注意到了一些事情,我不确定你在此处发布之前修改了多少代码......
1a)如果使用双引号括起来,请不要使用单引号。
OR
1b)将转义的单引号更改为转义双引号。
2)在您使用的网址$path_to_img
中,您定义的变量为$path_to_image
。使它们保持一致。