访问第一页(page1.php)时,网站会生成1到100的随机数。并且用户将猜测该数字。
第一页包含 - 接受a的文本框 来自用户的号码和提交按钮。
如果猜测数太高或太低,第二页(page2.php)将返回给用户。该页面显示一条消息,告诉用户“太高”或“太低”。该页面还包含 一个按钮(重试按钮),允许用户返回第一页(page1.php)重新输入一个新号码 一个允许用户退出游戏的按钮。
如果猜测正确,第三页(page3.php)将返回给用户。页面显示“正确”,随机数和尝试次数。
我有这个index.php,它是所有页面的核心。这是代码。
的index.php
<?php
$name = '';
$inputnumber = '';
$random = 33; //this is just an assumption to keep it simple
$message = '';
$guesscount = '';
if (isset($_POST['action'])) {
$action = $_POST['action'];
}
if ($action === 'guess') {
$guesscount = $_POST['$guesscount'];
$inputnumber = $_POST['$inputnumber'];
if ($inputnumber == $random) {
$message = "Correct!";
include 'page3.php';
}
if ($inputnumber > $random) {
$message = "Too High";
include 'page2.php';
}
if ($inputnumber < $random) {
$message = "Too Low";
include 'page2.php';
}
}
if ($action === 'retry') {
include 'page1.php';
}
page1.php中
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Number Guess</title>
</head>
<body>
<h1>Number Guess</h1>
<form name="myForm" action="index.php" method="post" >
Number Guess: <input type="text" name="$inputnumber" value="<?php if(isset($inputnumber)==1){
echo $inputnumber;}else echo ""; ?>" /><br>
<input type="submit" name="action" value="guess" />
<hr>
Guess Count: <?php echo $guesscount; ?>
</form>
</body>
</html>
使page2.php
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Number Guess</title>
</head>
<body>
<h1>Number Guess</h1>
<form name="myForm" action="index.php" method="post" >
Message: <?php echo $message; ?>
<input type="hidden" name="$guesscount" value="<?php echo $guesscount;?>"/><br>
<input type="submit" name="action" value="retry" />
<hr>
Guess Count: <?php echo $guesscount;?>
</form>
</body>
</html>
page3.php
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Number Guess</title>
</head>
<body>
<h1>Number Guess</h1>
<form name="myForm" action="index.php" method="post" >
Message: <?php echo $message; ?>
Number of Tries: <?php echo $guesscount; ?>
<input type="submit" name="action" value="ok" />
</form>
</body>
</html>
page1.php是首先加载的页面。
我遇到的挑战是,我无法始终保持$ guesscount稳定。它一直在重置我。我已经尝试了会话但无法解决它。请帮助解决它。 提前谢谢。
答案 0 :(得分:1)
我不知道为什么,但我的直觉告诉我,会话在其他网页上不适合你的原因是因为你没有启动它?
所以你需要做的是:
的index.php
<?php
session_start();
$mySessionVar = $_SESSION['myVariable'];
var_dump($mySessionVar); // <- this should print myVariable
?>
page1.php中
if(isset($_SESSION['myVariable']) && $_SESSION['myVariable'] != null) {
$mySessionVar = $_SESSION['myVariable'[;
}
您可能会收到一条错误消息,指出$ _SESSION为null或未设置,并且可以防止您只能将$ _SESSION包含在内部并使用isset方法
{{1}}