簡體   English   中英

PHP不會回顯$ _POST

[英]PHP won't echo out the $_POST

有一個小問題,這段代碼

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<?php
...
echo '<input name="textfield" type="text" id="textfield" value="Roger" />';
echo 'Hello, '.$_POST['textfield'].'<br>';
...
?></p>
</form>

應該回顯“ Hello,Roger”,因為roger是默認值,但它只給出“ Hello,”,而沒有其他內容。 有什么建議么?

編輯:是的,有一種形式。

謝謝!

您正在回顯文本框,同時希望獲得它的值,這是不可能的。

echo '<input name="textfield" type="text" id="textfield" value="Roger" />';
echo 'Hello, '.$_POST['textfield'].'<br>';

您需要先提交表單並將其方法設置為post ,然后才能獲取其值。

例:

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
...
<input name="textfield" type="text" id="textfield" value="Roger" />
...
<input name="submit" type="submit" id="submit" value="submit" />
</form>

的PHP

if (isset($_POST['submit']))
{
    echo 'Hello, '.$_POST['textfield'].'<br>';
}

嘗試使用print_r($_POST)var_dump($_POST)查看是否提交了任何POST數據。

編輯:您是否在表單標簽中指定POST作為Submit方法? 您提交表格嗎? 請顯示整個<form> -Tag。

如果這恰好是您的代碼,則問題在於尚未設置$ _POST,因為未提交任何表單。

  • 檢查CSS(是否隱藏。.=
  • 檢查頁面的來源(是否出現輸入字段?)
  • 如果您想將輸入提交回同一頁面,請不要忘記將輸入包裝在表單中。

我猜是服務器沒有分配$_GET和/或$_POST 您可以在php配置中進行檢查。

看一下是否可以通過$_REQUEST訪問數據,這應該統一獲取和發布數據。

暫無
暫無

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

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