PHP代码问题。
我已经挖掘了堆栈交换,但我找到的大多数解决方案都与我工作的东西有关。我可以准确地得到输出显示“猜测太高”或“猜测太低”的结果。但是,我遇到的问题是试图让数字更新。
我的代码以这种方式设置“我正在考虑lowerNumber和higherNumber之间的数字。”
我正在尝试获取适当的变量值,以便在每次猜测时更新。因此,如果我的数字是23并且有人猜测12,那么下一次加载页面时,它将是“太低了!数字介于12和100之间”。然后,如果他们猜测30,这太高,它会输出“太高!数字在12到30之间。”
目前,如果我猜测,它会更新正确的值,但会将另一个值更改为空白值。如果我设置:
$higher = 100;
$lower = 1;
正好在$ randomNum(当前声明而不是随机)之下,然后它会将值更改为1或100,同时更新另一个。
有谁能解释我做错了什么? 我一直在研究这个问题八个小时,但仍然无法弄清楚我做错了什么......我非常感谢知道我需要做些什么才能让它发挥作用。
<?php
$randomNum = 23;
if(isset($_POST['myGuess'])) {
$myGuess = $_POST['myGuess'];
$higher = "";
$lower = "";
if($myGuess > $randomNum){
echo "Too high!";
$higher = $_POST['myGuess'];
$lower = $_POST['lower'];
} else if ($myGuess < $randomNum){
echo "Too low!";
$lower = $_POST['myGuess'];
$higher = $_POST['higher'];
} else if ($myGuess === $randomNum) {
echo "Good job! That is my number!";
}
} else {
$lower = 1;
$higher = 100;
}
?>
<!DOCTYPE html>
<html>
<header>
<style>
#wrapper {
height: 450px; width: 550px; background-color: black; color: white;"
}
.box {
background-color: gray;
height: 400px;
width: 500px;
margin-top: 25px;
margin-left: 25px;
position: absolute;
}
p {
margin-left: 25px;
margin-top: 25px;
}
.inputs {
margin-top: 15px;
margin-left: 40px;
}
</style>
</header>
<body>
<div id="wrapper">
<div class="box"><p>I am thinking of a number between
<?php echo $lower;
?>
and
<?php echo $higher;
?>
.</p><br>
<form action="1to100.php" method="POST">
<input type="hidden" name="lower" value="<?php $lower ?>">
<input type="hidden" name="higher" value="<?php $higher ?>">
<input type="text" name="myGuess" class="inputs"><br>
<input type="submit" class="inputs" value="GUESS!"><br>
</form>
</div>
</div>
</body>
</html>
答案 0 :(得分:2)
此代码有三个错误:
<input type="hidden" name="lower" value="<?php $lower ?>">
<input type="hidden" name="higher" value-"<?php $higher ?>">
<?php $lower
应为<?php echo $lower
,同理为$higher
。并且在第二个值属性之后有一个 - 而不是a =。正确的代码是:
<input type="hidden" name="lower" value="<?php echo $lower ?>">
<input type="hidden" name="higher" value="<?php echo $higher ?>">
答案 1 :(得分:1)
你的问题在于:
<input type="hidden" name="lower" value="<?php $lower ?>">
<input type="hidden" name="higher" value-"<?php $higher ?>">
您不会将变量打印得越来越低。