1

問題は、ページを移動するときに GET フォームで使用した検索変数を保持したいということです。何かを検索してから画像を検索したい場合、Google が行うのと同じように、画像をクリックするだけで、検索を置き換える必要はありません。ページの作成時に、画像のリンクやその他の種類の検索の URL に既に GET 文字列が含まれていることがわかりました。URL文字列からすべてを含む変数があり、hrefに次のページに戻すことができます。

例: 私の現在の URL:localhost/index.php?name=John 別のページへのリンクがあります。たとえば、edit.php とします。echo のようなコードを配置すると便利です'edit.php?'.$GET_var.';edit.php?name=John

編集:私はおそらく使用します$string = http_build_query($_GET); が、別のことは、で部品を取得することindex.phpです。したがって、私がこのページ(index.php)にいる場合、このページへのリンクが必要でindex.phpあり、他のリンクが ?query 引数を持つ必要がある場合

4

4 に答える 4

2

組み込みの を使用することをお勧めしparse_urlます。

$url ="http://localhost/index.php?name=John";
$result = parse_url($url);
$newUrl = 'http://localhost/index.php?' . $result['query'];

または、次の component 引数を使用して、少しきれいにすることもできますparse_url

$url ="http://localhost/index.php?name=John";
$query = parse_url($url, PHP_URL_QUERY);
$newUrl = 'http://localhost/index.php?' . $query;

parse_urlについて読んでください。

于 2014-08-20T06:26:07.417 に答える
1

あなたはこれを試すことができます

// suppose your url is index.php?name=john&city=jordan

$arr_temp = array();
foreach($_GET as $key=>$val)
{
   $arr_temp[] = $key."=".$val; // name=john or city=jordan into arr_temp array
}

$params = implode("&", $arr_temp); // implode with & name=john&city=jordan

echo 'edit.php?'.$params; // combine params to new link

更新 2:

$params = $_SERVER['QUERY_STRING'];
echo 'edit.php?'.$params;
于 2014-08-20T06:22:05.343 に答える
1

PHP を使用して $_GET 変数をあるページから別のページに移動するには、htt_build_query 関数を次のように使用できます。

$string = http_build_query($_GET);

その $string を URL に追加します。例: YOUR_URL?$string

于 2014-08-20T06:31:30.917 に答える
0

$_SERVER['QUERY_STRING']には GET 変数があります。phpinfo()を調べて、他に何が利用できるかを確認することもできます。

于 2014-08-20T06:31:05.157 に答える