2014-01-14 19 views
0

非常簡單的測驗應用程序。即使瀏覽器不正確,瀏覽器也會一直返回正確的響應。PHP窗體不斷給我回相同的迴應

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

第2行和第3行的額外刻度標記是什麼:「'」? – jakerella

回答

0

isset返回一個布爾值(truefalse)值。所以,你的測試將始終失敗,因爲true!=「達格妮·塔格特」

添加這個三元,也將努力

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

試試這個。您目前正在將$answer設置爲isset($_POST['answer'],這意味着只要設置了$_POST['answer'],您的$ answer將爲TRUE。我會檢查它是否已設置,然後將其設置爲$_POST的值。

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

?> 
+0

那麼如果在你的例子中沒有設置$ _POST ['answer']'會發生什麼? – Machavity

+0

@Machavity他們回到這裏檢查我修改後的答案;) – jboneca