web-dev-qa-db-ja.com

HTTPポスト:URLパラメーターとフォームデータ

Http POST Webフォーム経由のリクエスト、URLで指定されたパラメーターとサーバー側のフォームで渡されたパラメーターの間に(実際的または理論的に)違いはありますか?

Urlパラメーターを使用してPOSTを実行し、フォーム入力と同じ結果を期待できますか?

お気に入り:

  <form action="/?id=2" method="post">
      <input type="text" name="name" value="John"/>
      <input type="submit" value="submit"/>
  </form>

または:

  <form action="/?id=2&name=John" method="post">
      <input type="submit" value="submit"/>
  </form>

ありがとう。

20
Bogdan Gusiev

GabrielとBrokenGlassが提供する参照は本当に素晴らしいですが、2セントを教えてください。

サーバー側のフォームから送信されたデータを取得する方法について、もう少し知っていると思います。そうでない場合は、そこから始めてください。答えは想像以上に速くなります。

さて、URLまたはフォームの属性アクションで送信されるパラメーターはGETデータパラメーターです。それらは解析され、そのまま利用可能になります。限目。

メソッドPOST=を持つフォームからの入力フィールドは、POSTデータとして送信され、解析されて利用可能になります。

あなたが与えた例から、そしてあなたがPHPを使用していると仮定すると、以下を取得できます。

例1

$_GET['id']
$_POST['name']

例2

$_GET['id']
$_GET['name']

概念が明確であることを願っています。

15
Dave

GETとPOSTの違いについて この記事 を読む必要があります(GETはURLにパラメーターを入れるときであり、POSTはフォーム内のパラメーター)。

また、この質問はすでに回答済みです ここではStackOverflow

1
Gabriel McAdams