自分のサイトにPOSTベースの検索機能があります。ただし、特定のキーワードを検索するリンクを提供できるようにしたいと思いますが、フォームがGETリクエストを処理しないため、これはもちろん可能ではありません。これを回避する方法はありますか?POSTベースのスクリプトにGETリクエストを送信しますか?
答えて
は、サーバー許可で検索アプリがGET経由で検索する場合、これは動作します
<form action="/search" method="GET">
を取得するには、フォームのメソッドを設定します。注意のちょうど、あなたはとにかく検索のためにGETを使用しているはずです。 POSTは変更を加えてデータを投稿することです。検索結果を「取得」しているので、GETを使用してください。
使用スーパーグローバル
$_REQUEST
私はcontanins $ _GET、$ _POST、$ _COOKIES +1です。 – Eineki
グローバルは悪です。そして、PHPのスコープはうんざりです。 –
Hmmは、PHPでWebアプリケーションを構築するためには、$ _GET、$ _POST、$ _COOKIESが必要ではありません:D、PHPの概念やスーパーグローバルを誤解していると思います... –
javascriptを使用すると、リンクからフォームをPOSTすることができます。それを行う方法の例は次の場所にあります。
http://mentaljetsam.wordpress.com/2008/06/02/using-javascript-to-post-data-between-pages/
私がGETを使用して動作するようにフォームを変更するになります。
冪等の要求に対してGETメソッドが使用されるため、検索メカニズムにGETを使用することは適切です。つまり、状態の変更を心配することなく繰り返し実行できます。 POSTのセマンティクスが
<input type="text" id="searchcat"></input>
<form method="POST">
...
<input type="submit" onclick="this.form.action='/search?cat=' + document.getElementById('searchcat').value"></input>
</form>
(関係なく、このシナリオで起こっ本当にのかどうかの)あなたはデータを掲示し、変更を実行しているということであるかもしれないこのソリューションは助けるだろうか?もちろん、 "searchcat"コントロールはコンボボックスのようです。そして、onclickハンドラは、インラインではなく、JS関数として使う方がよい...
実際には、この送信をクリックすると、すべてのHTTPヘッダーが生成され、フォームデータからリクエスト本文が収集され、 GET変数を含んでいます。この方法では、検索サーバー側のハンドラにGETとPOSTの両方のデータが格納されます。
コントロールのonChangeを処理することで、GET変数を実際に変更することがさらに効果的です。しかし、この例は、IDEなしではもっと長く読みづらいものです。
- 1. Yii2:data-method = 'post'がGETリクエストを送信しています
- 2. IEはGETの代わりにPOSTを送信します。$ .get
- 3. PythonサーバーにAjax POST/GETリクエストを送信する
- 4. React Native - Fetch POSTリクエストがGETリクエストとして送信されています
- 5. Androidでフォーム経由でGETリクエストまたはPOSTリクエストを送信する
- 6. WSO2 API Manager 2.0.0- GETリクエストを受信してバックエンドにPOSTを送信
- 7. いくつかのPOST/GETリクエストを同時に送信するには?
- 8. 残りのAPI UCWA用Get/POSTリクエストの送信方法
- 9. HTTPリクエストを送信してGET/POSTをJavaで作成するには?
- 10. 私はPOSTリクエストを送信
- 11. POSTリクエストの送信:System.Net.WebException
- 12. $ .getはリクエストURLにプロトタイプ関数を送信しますか?
- 13. フォームはPOSTの代わりにGETを送信します
- 14. フォームはPOSTの代わりにGETを送信します
- 15. 角でGET/POSTの代わりに 'OPTIONS'リクエストを送信しているブラウザ4
- 16. Angular-cliプロキシ。 POSTリクエストがGETとして送信されました
- 17. JAVA送信POST HTTPリクエスト
- 18. CURLなしでGETリクエストを送信
- 19. Googleの連絡先API(OAuth2)にGETリクエストの代わりにPOSTを送信
- 20. URLを介してPOSTリクエストを送信
- 21. POSTリクエストをGoogleフォームレスポンスとして送信
- 22. ESP8266リモートサーバーにGETリクエストを送信
- 23. C#なぜHttpClient.PostAsJsonAsyncがGETリクエストを送信していますか?
- 24. POSTリクエストはGET
- 25. Jmeterは各GETリクエストに対して2つのリクエストを送信します
- 26. PDFフォームフィールドをHTTP POSTリクエストに送信
- 27. フラスコでリダイレクト中にPOSTリクエストを送信
- 28. Angular2 - サーバーにPOSTリクエストを送信
- 29. AJAX POSTリクエスト経由でiso-8859-1を送信しますか?
- 30. HTMLフォームでRAWデータPOSTリクエストを送信しますか?
私はこれを知っていましたが、私はそれが長い時間がかかるだろうと思ったからです。それは簡単だと分かりました。 –