我的程序目标 1.我的网站上分别显示5-6个圆圈。 2.每当点击一个圆时,它应该永久变为红色或绿色。SESSION无法保留值| PHP代码中的逻辑错误
这里是我的代码:
<?php session_start(); ?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Let's see !</title>
</head>
<body>
<?php
define("SIZE", 5);
for ($i = 0 ; $i < SIZE ; $i++) //Initializes all Color Blocks to BLUE if not clicked
{
//If Image has been clicked, it takes a Color RED or GREEN
if (isset($_POST[$i."form"]))
{
if($i % 2 == 0)
$_SESSION[$i] = "green.jpg";
else
$_SESSION[$i] = "red.jpg";
}
else
{ //to check if image was previously clicked.
if ($_SESSION[$i] == "green.jpg")
$_SESSION[$i] = "green.jpg";
elseif ($_SESSION[$i] == "red.jpg")
$_SESSION[$i] = "red.jpg";
else //if never clicked it will be made blue.
$_SESSION[$i] = "blue.jpg";
}
}
for ($i = 0 ; $i < SIZE ; $i++)
{
?>
<form method="POST" action="index.php">
<input type="image" width=120 src="<?php echo $_SESSION[$i]; ?>" name="mainin"/>
<input type="hidden" name="<?php echo $i."form"; ?>" value="" />
</form>
<?php }
echo session_id(); //Sessions are working correctly. No issue with them.
?>
</body>
</html>
此计划会发生什么? 每当一个圆圈,被点击它变成红色。点击第二个圆圈后,变为绿色,第一个圆圈显示为蓝色。而点击第二个圆圈时,第一个圆圈应显示为红色,第二个圆圈显示为绿色。
就我所知,这个程序中存在逻辑或概念错误。如果有人能告诉我我错了什么地方,我将会很棒。我一直试图弄清楚这几个小时。
请粘贴您的html表单代码。 – GBD
以一个简单的'var_dump($ _ POST)'开始,以便您可以验证您认为提交的原因* *实际提交了。将输出(浏览器源代码中的视图)添加到问题中。 – hakre
HTML表单代码已经存在。请向下滚动一下。 –