我认为我做错了,但这就是我所拥有的......
if($_GET['color']) {
$color = "signature_";
echo "<img src=\"/images/+ $color \"; \"class=\"border\" alt=\"\" />";
我要做的是根据用户输入输出彩色图像。
所以说这就是我在做的事。
Http://somedomain.com/index.php?username=Ultima&color=red.
到目前为止,我正在取代用户名,但图片无效。
我使用“signature_”作为前缀,因为图像颜色都带有前缀。
我在输入时试图显示的图像:
signature_red.png
signature_green.png
signature_white.png
signature_yellow.png
signature_gold.png
signature_silver.png
signature_purple.png
signature_pink.png
__
我不确定我的代码出错了但是有没有人知道如何使用$get['color']
在网址输入时显示正确的图像?
答案 0 :(得分:4)
$g=$_GET['color'];
if(in_array($g, array('red', 'pink', 'yellow' etc...))) {
$color = "signature_".$g.'.png';
echo '<img src="/images/'. $color.'" class="border" alt="" />';
}
或类似的东西。你必须更换“etc ...”部分 如果没有检查,切勿将GET参数放入字符串中。
答案 1 :(得分:1)
除非我是愚蠢的(这是完全可能的),否则这需要改变:
if($_GET['color']) {
$color = "signature_";
应该是
if($_GET['color']) {
$color = "signature_" . $_GET['color'];
它也需要验证颜色,其他人已经覆盖了它。
答案 2 :(得分:0)
$color = "signature_" . $_GET['color'] . ".png";
echo "<img src=\"/images/$color\" class=\"border\" alt=\"\" />";