如果答案正确,如何将提交按钮重定向到下一页


How to redirect submit button to next page if answer is correct

如果答案正确,我想将提交按钮重定向到下一个问题网址。

    <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.";
}
?>