2017-06-22 56 views
0

我不知道我在做什麼錯誤,但我無法獲得PHP表單動作頁面工作,當我嘗試運行它時,它需要我到一個什麼都不做的空白頁面。我正在嘗試創建一個簡單的代碼,根據表單上的輸入將用戶重定向到一個頁面。這裏是我的表單代碼如下所示:(PHP)我無法獲取表單動作PHP代碼工作

<form action="index.php" method="post"> 
<font face="Stymie">ENTER SECRET CODE: <input type="text" name="secretcode"></font> 
</form> 

,這裏是什麼的index.php目前的樣子:

<html> 
<body> 
<?php 
    if ($_POST['secretcode'] === "banana") { 
     header("Location: banana.php"); 
    } 
?> 
</body> 
</html> 

這是一個超出許多代碼我試圖使用,但不管我放了什麼,它總是把我帶到一個空白頁面。我也嘗試使用GET而不是POST,但是這隻會讓我在頁面上運行代碼。 有人能告訴我我想要做的代碼工作?幫助將不勝感激。

更新:我發現一個Javascript等效於這個腳本,這是一個更有效和更簡單的,因此我不再需要一個答案。

<form onSubmit="return checkAnswer();"> 

<script> 
function checkAnswer(){ 
var response = document.getElementById('secretcode').value; 
if (response == "banana") 
location = 'banana.html'; 
else 
location = 'wrong.html'; 
return false; 
} 
</script> 
+0

你缺乏一個提交按鈕 – Swellar

回答

2

添加一個提交按鈕:

<form action="index.php" method="post"> 
    <font face="Stymie">ENTER SECRET CODE: <input type="text" name="secretcode"></font> 
    <button type="submit" name="submit" value="Enter"/> 
</form> 

而對於php代碼:

<?php 
    if (isset($_POST['submit'])) { 
     if($_POST['secretcode'] === "banana"){ 
      header("Location: banana.php"); 
     } 
    } 
?> 

我加入了isset(),以防止可能Undefined index:錯誤當您展開php

UPDATE

我只是想OP的代碼,它被提交即使沒有提交按鈕(不知道,也許我只是忘了)

這似乎爲我工作,我被重定向到banana.php當我在input類型banana,我看到的唯一問題是Undefined index錯誤(其中isset()會解決它)

+0

我剛剛嘗試過這兩種代碼,它仍然無法正常工作,即使按下提交按鈕,我仍然會給出空白頁面。 – sodaddict

+0

'banana.php'是否有任何內容? – Swellar

+0

是的,它是表單所在頁面的編輯,具有不同的背景顏色,不同的標題文本等。 – sodaddict