可能性の重複$ _POST機能を使用して、空のデータ受信:
php $_POST array empty upon form submissionはなぜ掲示HTMLフォームのテキストフィールドからPHP側で
を私はHTML形式のテキストフィールドを投稿する簡単なテストを行いますデータをPHPサーバーに送信します。そして、PHPサーバー側では、$ _POST []関数を使用して、投稿されたデータを取得してください。 しかし、常に受信される空の(ヌル)データがあります。以下に、私がテストしたHTMLコードとPHPスクリプトを添付します。 私が間違っていた場所を私が指摘できれば告発されましたか?
---- HTMLコード--- senddata.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=big5" />
<title>Untitled Document</title>
</head>
<body>
<form action="receivedata.php" method="post" enctype="application/x-www-form-urlencoded" name="form1" id="form1">
<label>_id
<input name="_id" type="text" id="_id" />
</label>
<br />
<label>Send
<input type="submit" name="Submit" value="Send" />
</label>
</form>
</body>
</html>
--- PHPスクリプトは----- receivedata.php
<?php
echo $_SERVER['SERVER_NAME']."<BR/>" ;
$id = $_post['_id'];
if (isset($id))
{
echo "Data set ready!<br/>";
echo "id=".$id."<br/>";
}
else
{
echo "Data set is not ready!<br>";
}
?>
との結果表示ブラウザ:
192.168.0.108
Data set is not ready!
あなたの例では誤植かもしれませんが、 '$ _POST'ではなく' $ _POST'が必要です。 PHP変数名は大文字と小文字が区別されます –
注: 'enctype =" application/x-www-form-urlencoded "はデフォルトのフォームエンコーディングです.HTMLに書き込む必要はありません。http://www.w3.org/TR/html401 /interact/forms.html#h-17.13.4 – hakre
あなたが気にしない場合は、投票した理由をご記入ください。ありがとう! – cmh