2016-12-16 90 views
0

我在PHP是一個新手,我想從表單發送DATAS並顯示到同一個頁面,這裏是我更好地理解代碼:將表單數據發送到同一頁面不functionning

<form method="post" action="same_page.php"> 
<input type="text" name="owner" /> 
<input type="submit" value="Validate" /> 
</form> 

<?php 
if(isset($_GET['owner'])) 
{ 
    echo "data sent !"; 
} 

?> 

所以通常情況下,已進入一些隨機文本後的表格,然後點擊「驗證」,消息「數據發送!」應該顯示在頁面上。我想我錯過了什麼,但我無法弄清楚什麼。

+0

在窗體中有POST方法,你就檢查中獲得價值 – Goikiu

+0

您只需通過分離的東西避免很多複雜的編程。你的代碼的問題是你有method =「post」並檢查$ _GET而不是$ _POST – 2016-12-16 11:17:07

+0

Leave action屬性爲空,並檢查print_r($ _ POST); – rahulsm

回答

0

你忘了添加在您的form.You提交的名字是使用POST方法作爲這樣的代碼應該是

<form method="post" action=""> 
    <input type="text" name="owner" /> 
    <input type="submit" name="submit_value" value="Validate" /> 
    </form> 

<?php 
if(isset($_POST['submit_value'])) 
{ 
    echo '<pre>'; 
print_r($_POST); 
} 

?> 

將顯示您提交值

0

替換:

$_GET['owner'] 

有了:

$_POST['owner'] 

由於您使用的是post方法在你的表格,你必須要檢查你的PHP代碼$_POST陣列。

+0

是的,但沒有解釋?這可能會引發錯誤。 –

0

您在表單中使用了POST方法。

<form method="post" action="same_page.php"> 

所以,你的代碼更改爲:

if (count($_POST) && isset($_POST['owner'])) 

技術上,上面的代碼執行以下操作:如果

  1. 首先檢查有在POST內容。
  2. 然後,它會檢查owner設置。
  3. 如果這兩個條件都滿足,則顯示該消息。

你實際上可以擺脫action="same_page.php"就好像你省略了一樣,你會發布到同一頁面。

注意:這是一種最糟糕的編程方法,您需要更改。

0

就應該更換$ _GET [「所有者」]與$ _ POST [「所有者」]在您的形式已指定方法=「後」

相關問題