0

私はこれを理解したことがなく、自分のプロジェクトではこれを必要としたことはありません。しかし、私は WordPress に少し貢献しており、彼らはそれを多用しています。

どういうわけか、URL にある種の GET 変数を使用して、ユーザーを別のページにリダイレクトすることができます (これは、POST よりも GET を使用する利点であると理解しています)。彼らはどのようにこれを行うのですか?のようなヘッダーを作成するのと同じくらい簡単header('site.com/page.php?foo=true');ですか? これは、すべてをハードコーディングする必要があるため、役に立ちません (まだ面倒な他の変数に基づいて文字列を作成したい場合を除きます)。のような組み込み関数があると思いましたsend_get('page.php', $foo);

を使って情報を利用する方法は理解$foo = $_GET['foo'];できたが、PHP で送信する方法がわからない。

説明をいただければ幸いです - ありがとう!

4

4 に答える 4

2

それを使用する「慣習的な」方法は正確にはありません。9 つのスーパーグローバルの 1 つです。それらをどのように使用するかは、あなたの裁量に委ねられています。Greg P が既に述べたように、それらは URL を介して渡されます。

この方法で変数を送信する HTML フォームをセットアップする方法は知っていますが、PHP で同じことを行うにはどうすればよいでしょうか?

PHP のみで GET 変数を送信することについて話している場合、答えはノーです。GET 変数を送信するのに PHP さえ必要ありません。疑問符の後に変数名 = something を追加するのと同じくらい簡単です。アンパサンド (&) を使用してそれらのいくつかを区切ります。

GET 変数の設定は、アンカー リンクの作成と同じくらい簡単です。 <a href='somepage.php?getVar1=foo&anotherVariable=2&thirdVar=3

PHP を使用すると、特定の情報を手動で記述する代わりに、そこに動的に配置できます。これが言語の本来の目的です。プリプロセッサです

だから、このような何かがあなたを始めるはずです

<?php
$someID = // An id pulled from a mysql_query
echo "<a href='somepage.php?someID=" . $someID . "'>GET LINK</a>";

send_get('page.php', $foo); のような組み込み関数があると思いました。

繰り返しますが、PHP はプリプロセッサーです。情報を送るのではなく、出力するだけです。あなたが話しているのはJavascript..さらにはAJAXです。AJAX は、「舞台裏」で GET 変数を送信できる唯一の方法です。そして、別の投稿で述べたように、jQuery にはこのための優れたコードベースがあります。

于 2012-05-28T16:03:01.060 に答える
0

PHP.netは次のように述べています。

URL パラメーターを介して現在のスクリプトに渡される変数の連想配列。

URL パラメータ: 通常、例のように URL を介してスクリプトに渡される変数ですsite.com/page.php?foo=true。の後のすべて?がパラメータと見なされます。

StackOverflowの質問から引用:

HTTP プロトコルは、GET タイプのリクエストを冪等であると定義していますが、POST には副作用がある可能性があります。つまり、GET は何かを変更せずに表示するために使用され、POST は何かを変更するために使用されます。たとえば、検索ページでは GET を使用し、パスワードを変更するフォームでは POST を使用する必要があります。

于 2012-05-28T16:03:32.477 に答える
0

木の森が欠けていると思います... $_GET/$_POST は、それらを処理するページに渡される単なる変数です-それらで何が行われ、どのように行われるかは、の設計次第です応用。たとえば、Joomla は常に component_id と item_id を $_GET 配列に入れ、それを念頭に置いて設計されているため、それらがそこにあることを期待して、ページを構築したり、リダイレクトしたり、それを念頭に置いて何でもします。

あなたの例では、 send_get() 関数は良いアイデアかもしれませんが (私はそれを設計しませんでした)、アーキテクトは何らかの理由でそれをそのように見なしませんでした。Joomla には、$_GET で渡されたものに特定の依存関係を持つリダイレクト関数がありますが、これはアプリケーション作成者の設計によるものです。

于 2012-05-28T15:53:14.893 に答える
0

変数URLの一部にリダイレクトが保持されている可能性があります。session適切$_GETな変数、wordpress の場合:「リダイレクト URL のセッション変数を確認してください」を示します。

于 2012-05-28T15:54:08.677 に答える