簡體   English   中英

將表單數據發送到同一頁面不起作用

[英]Send form data to the same page not functionning

我是PHP的新手,我想從表單發送數據並將其顯示在同一頁面中,這是我的代碼,可以更好地理解:

<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 !";
}

?>

因此,通常,在表格中輸入一些隨機文本並單擊“ 驗證 ”后,消息“ 數據已發送! ”應顯示在頁面上。 我想我錯過了一些東西,但我不知道是什么。

更換:

$_GET['owner']

帶有:

$_POST['owner']

由於您在表單中使用post方法,因此必須在PHP代碼中對照$_POST數組進行檢查。

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

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

因此,將您的代碼更改為:

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

從技術上講,以上代碼執行以下操作:

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

實際上,您可以刪除action="same_page.php" ,就像您忽略它一樣,您將發布到同一頁面。

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

您應該將$ _GET ['owner']替換為$ _POST ['owner'],因為您在表單中指定了method ='post'

您忘記在表單中添加提交名稱。您使用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);
}

?>

將顯示您的帖子值

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM