0
나는 사용자가 질문에 대답 할 수있는 간단한 수학 게임을 가지고 있으며 입력 답변이 올바른지 확인합니다.수학 게임에서 int를 비교 PHP
답변이 올바른 경우 올바른 것으로하고 그렇지 않은 경우 잘못된 것으로 말하고 싶습니다. 지금까지 나는 정확한 문자열이 보이지 않는 것을 보았습니다. 심지어 내가 입력 한 대답이 정확하다는 것을 알았을 때조차도.
나는 그것이 내 $_POST
과 관련이 있다고 믿지만, 나는 완전히 확신하지 못한다. 이 문제를 어떻게 해결할 수 있습니까?
<html>
<head><title>Addition php</title></head>
<body>
<h1>MATH GAME WOOOO</h1>
<form action="<?php $PHP_SELF?>" method="POST">
<input type="text" name="guess"><br>
<input type="submit" name="guess-butt"><br>
</form>
<?php
$operators = array("+", "-", "*", "/");
$operator = $operators[rand(0,2)];
$rand_int1 = rand(0, 10);
$rand_int2 = rand(0, 10);
echo("<a>What is " . $rand_int1 . ' ' . $operator . ' ' . $rand_int2 . "?</a><br>");
echo('guess for last question: ' . $_POST['guess'] . '<br>');
if (isset($_POST['guess'])) {
$guess = intval($_POST['guess']);
if ($operator == "+")
{
$temp = $rand_int1 + $rand_int2;
echo('answer: ' . $temp . "<br>" . '');
if ($guess == $temp)
{
echo("<br>correct<br>");
}
else
{
echo('<br>incorrect<br>');
}
}
elseif ($operator == "-")
{
$temp = $rand_int1 - $rand_int2;
echo('answer: ' . $temp . "<br>" . '');
if ($guess == $temp)
{
echo("<br>correct<br>");
}
else
{
echo('<br>incorrect<br>');
}
}
elseif ($operator == "*")
{
$temp = $rand_int1 * $rand_int2;
echo('answer: ' . $temp . "<br>" . '');
if ($guess == $temp)
{
echo("<br>correct<br>");
}
else
{
echo('<br>incorrect<br>');
}
}
elseif ($operator == "/")
{
$temp = $rand_int1/$rand_int2;
echo('answer: ' . $temp . "<br>" . '');
if ($guess == $temp) {
echo("<br>correct<br>");
}
else
{
echo('<br>incorrect<br>');
}
}
}
?>
</body>
</html>
'$ 운영자 [랜드를 (0,2)] ;'결코'/'를 선택하지 않을 것이다. 배열에서 무작위 요소를 선택하려면'array_rand()'를 사용해야합니다. – Barmar
모든 연산자를 볼 수 있습니다 ... – Jason
당신의 추측은 다른 임의 값을 사용하는 이전 페이지로드에서 왔습니다. – Chris