如果答案正确,我想将提交按钮重定向到下一个问题网址。
<html>
<head>
<title>PHP Test</title>
</head>
<body>
<p>
Answer the question.
</p>
CLUE: The base is rotated
<br/></body>
<form action="" method="post">
Answer: <input type="text" name="number" /><br />
<input name="submit" type="submit">
</form>
</html>
在
html 标签之前放置的内容:
<?php
if (isset($_POST['number']) && $_POST['number'] == 12345) {
header('Location: /next/page/');
}
?>
由于它返回到同一页面,因此您可以添加一个隐藏的输入字段。
<?php if (isset($_POST[number]){
if ($_POST['number'] == $answer){
$_SESSION['answer1'] == $answer;
header("Location: /next/page");
}
}
?>
将其另存为会话变量,以便您可以在测验结束时轻松访问它们或任何内容。
您可以创建一个包含答案的隐藏字段,并创建一个新脚本,该脚本将文本字段中的答案检查为隐藏字段中的答案 ($answer) 并重定向到新页面。
假设我们将此脚本称为 checkanswer.php ->那么你的表单操作应该读作<form action="checkanswer.php" method="post">
CheckAnswer.php 将如下所示:
<?php
if(isset($_POST['number'])
{
if ($_POST['number'] == $answer)
{ echo "Correct!";
header("location:nextquestion.php");
}
else
{ echo "That is not the right answer, try again!"; }
?>
这是一个非常基本的方法来检查是否给出了正确的答案,并使用header
重定向到另一个页面。
如果用户在您的表单字段中键入单词answer
,则它将被设置为 TRUE
。
如果答案不正确,将显示Sorry, wrong answer.
<?php
if(isset($_POST['submit'])) {
$answer = "answerswer";
if($_POST['number'] == $answer) {
// echo "Correct";
header("Location: correct.php");
} else {
die("Sorry, wrong answer.");
}
}
?>
使用会话方法:
<?php
session_start();
if (!isset($_SESSION['name'])) {
$_SESSION['name'] = "correct";
}
if(isset($_POST['submit'])) {
$answer = "answerswer";
if($_POST['number'] == $answer) {
header("Location: correct.php");
} else {
die("Sorry, wrong answer");
}
}
else {
die("You cannot access this page from here.");
}
?>
正确.php
<?php
session_start();
if (!isset($_SESSION['name'])) {
die("Sorry, session not set.");
}
else {
echo "Correct answer.";
}
?>