質問
エンコードされたURLとHTMLフォームのGETメソッドを介してパラメーターを渡すと、URLエンコードされたパラメーターがドロップされるのはなぜですか?
e.g。セットアップ:
<form action="process.php?hello=world" method="GET">
<input type="text" name="foo" value="bar">
<input type="submit">
</form>
結果:変数 hello
は process.php
で認識されません。
これは悪い習慣ですか?
これはPHPが処理する方法ですか、それともブラウザがリクエストを送信する方法に関連していますか?他の言語でも同じ問題がありますか?
解決
はい、それはうまくいかないので悪い習慣です。
「非表示のフォーム入力」で渡す場合次に、非表示のフォーム要素を使用する必要があります。
<input type="hidden" name="hello" value="world" />
rezzifがコメントで述べているように、GETと次のようなPOST:
<form action="/something?foo=bar" method="POST">
<input type="text" name="baz" />
</form>
一般的なルールとして、私は2つを混ぜることは避けます。フォームアクションにGETパラメーターを含めるのは奇妙です。
所属していません StackOverflow