PHP表单不断给我回复相同的响应

时间:2014-01-14 23:31:53

标签: php html forms if-statement switch-statement

非常简短的简单测验应用。浏览器保持返回正确作为响应,即使它不正确。

<?php
$answer = (isset($_POST['answer']));`
if ($answer == "Dagny Taggart")`
{
echo "Correct";
 } else {
 echo "wrong";
 }
 ?>

2 个答案:

答案 0 :(得分:1)

试试这个。您目前正在将$answer设置为isset($_POST['answer'],这意味着只要设置了$_POST['answer'],您的答案就是TRUE。我会检查它是否已设置,然后将其设置为$_POST值。

<?php
if(isset($_POST['answer'])) {
    $answer = $_POST['answer'];
    if ($answer == "Dagny Taggart")
    {
        echo "Correct";
    } else {
        echo "wrong";
    }
} else {
// Do something?
}

?>

答案 1 :(得分:0)

isset返回布尔值(truefalse)值。因此,您的测试将始终失败,因为true!='Dagny Taggart'

添加此三元组,它将起作用

$answer = (isset($_POST['answer'])) ? $_POST['answer'] : '';