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

时间:2013-10-14 15:32:20

标签: javascript php html

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

    <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>

4 个答案:

答案 0 :(得分:1)

在html标记之前放置的内容:

<?php
if (isset($_POST['number']) && $_POST['number'] == 12345) {
    header('Location: /next/page/');
}
?>

答案 1 :(得分:0)

由于它将返回同一页面,您可以添加隐藏的输入字段。

<?php if (isset($_POST[number]){

        if ($_POST['number'] == $answer){
            $_SESSION['answer1'] == $answer;
            header("Location: /next/page");
        }
    }

?>

将其保存为会话变量,以便您可以在测验结束时或其他任何地方轻松访问它们。

答案 2 :(得分:0)

您可以创建一个包含答案的隐藏字段,并创建一个新脚本,将文本字段中的答案检查到隐藏字段($ answer)中的答案,然后重定向到新页面。

假设我们将此脚本称为checkanswer.php - &gt;那么您的表单操作应该是<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!"; }
 ?>

答案 3 :(得分:0)

这是检查是否给出了正确答案,并使用header重定向到其他页面的一种非常基本的方法。

如果用户在表单字段中键入单词answer,则会将其设置为TRUE

如果答案不正确,则会显示Sorry, wrong answer.

<?php

if(isset($_POST['submit'])) {
$answer = "answer";

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 = "answer";

if($_POST['number'] == $answer) {
header("Location: correct.php"); 
} else { 
die("Sorry, wrong answer");
}

}

else {
die("You cannot access this page from here.");
}
?>

correct.php

<?php
session_start();

if (!isset($_SESSION['name'])) {
die("Sorry, session not set.");
}

else {
echo "Correct answer.";
}

?>