2009-05-20 20 views

答えて

3

は、サーバー許可で検索アプリがGET経由で検索する場合、これは動作します

<form action="/search" method="GET"> 

を取得するには、フォームのメソッドを設定します。注意のちょうど、あなたはとにかく検索のためにGETを使用しているはずです。 POSTは変更を加えてデータを投稿することです。検索結果を「取得」しているので、GETを使用してください。

+0

私はこれを知っていましたが、私はそれが長い時間がかかるだろうと思ったからです。それは簡単だと分かりました。 –

4

使用スーパーグローバル

$_REQUEST 
+0

私はcontanins $ _GET、$ _POST、$ _COOKIES +1です。 – Eineki

+0

グローバルは悪です。そして、PHPのスコープはうんざりです。 –

+1

Hmmは、PHPでWebアプリケーションを構築するためには、$ _GET、$ _POST、$ _COOKIESが必要ではありません:D、PHPの概念やスーパーグローバルを誤解していると思います... –

0

私がGETを使用して動作するようにフォームを変更するになります。

冪等の要求に対してGETメソッドが使用されるため、検索メカニズムにGETを使用することは適切です。つまり、状態の変更を心配することなく繰り返し実行できます。 POSTのセマンティクスが

0
<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なしではもっと長く読みづらいものです。

関連する問題