好的,我有单选按钮供用户从某些图像中选择作为图像。他们的图像以默认图像开始,可以将其更改为其他图像。这是用于显示图像的单选按钮和PHP:
<input type="radio" id="Default" name="change_image" value="0" />
<input type="radio" id="Unknown" name="change_image" value="1" />
<input type="radio" id="Gasmask" name="change_image" value="2" />
<?php
if ( $user_image < 1 )
{
echo
'<img src="images/user_image/Default.png" width="60" height="60" />';
}
elseif ( $user_image = 1 )
{
echo
'<img src="images/user_image/Unknown.png" width="60" height="60" />';
}
elseif ( $user_image > 1 )
{
echo
'<img src="images/user_image/GasMask.png" width="60" height="60" />';
}
?>
嗯,if和first else的工作,但是第三个ifif将不会显示该图像?他们有什么理由吗?
答案 0 :(得分:4)
您使用=
这是一个赋值语句而不是比较语句。使用==
进行比较!
另外,你正在做的事情似乎有点开销(对我而言,我不是专家),但请注意我看不出你如何处理$user_image
。我将如何做到这一点:
<input type="radio" id="Default" name="change_image" value="Default" />
<input type="radio" id="Unknown" name="change_image" value="Unknown" />
<input type="radio" id="Gasmask" name="change_image" value="Gasmask" />
<?php
if (isset($_POST['change_image'])) { //make sure you validate that the right stuff is being posted
$user_image = $_POST['change_image'];
echo "<img src='images/user_image/".$user_image.".png' width='60' height='60' />";
}
我还没有测试变量是否正确连接,但只要遵循名称约定为单选按钮的值,这将为您节省许多if语句。我希望这有帮助!
答案 1 :(得分:2)
我相信这是由于你的第二个问题。
elseif ( $user_image = 1 )
您应该测试相等性,而是将值1分配给$ user_image。尝试将其替换为:
elseif ( $user_image == 1 )
答案 2 :(得分:2)
如果条件人使用双等号
,则分配if ( $user_image < 1 )
{
echo
'<img src="images/user_image/Default.png" width="60" height="60" />';
}
elseif ( $user_image == 1 )
{
echo
'<img src="images/user_image/Unknown.png" width="60" height="60" />';
}